eingebettete Grafik

  • Ich habe per Lotus Script eine BMP-Grafik aus einer Datei in ein Dokument eingebettet, und zwar als eingebettetes Objekt in einem RitchText-Feld. Danach wird die Grafik aber nicht als Grafik in der entsprechenden Dokumentmaske angezeigt, sondern ich sehe nur den Rahmen mit dem Text-Eintrag 'Bitmap'.
    Bearbeite ich jetzt das Dokument (das RitchText-Feld ist bearbeitbar) und ändere in den Eigenschaften des Objekts den Eintrag 'Anzeigen als' (steht auf Bild, was ja eigentlich korrekt ist) einmal auf 'Bitmap' und anschließend zurück auf 'Bild' und speichere danach das Dokument, sehe ich die Grafik korrekt.
    Wie kann ich es anstellen, dass sofort nach dem Einbetten die Grafik korrekt als Grafik angezeigt wird?
    Es ist wichtig, dass die Grafik beim Anlegen des Dokuments oder auch auch nachträglich über ein Script in das Dokument eingetragen werden kann - dies muss nicht zwingend über ein RitchText Feld geschehen, das war aber die einzige Möglichkeit, die ich gefunden habe.

    • Offizieller Beitrag

    Wie hast Du die Grafik eingebettet (Code)?


    Wahrscheinlich hast Du dabei nur den falschen Typ gewählt.


    Gruß
    Dirk

    Rein logisches Denken verschafft uns keine Erkenntnis über die wirkliche Welt.
    Alle Erkenntnis der Wirklichkeit beginnt mit der Erfahrung und endet mit ihr.
    Alle Aussagen, zu denen man auf rein logischen Wegen kommt, sind, was die Realität angeht, vollkommen leer.
    Albert Einstein

  • <snip>
    set rtfitem=doc.CreateRichTextItem(feldname)
    set EmbeddedObject = rtfitem.EmbedObject( EMBED_OBJECT, "", filename)
    </snip>
    wobei filename der Dateiname der Grafik ist.

    • Offizieller Beitrag

    dies wirst Du so nicht hinbekommen.


    Muss es eine bmp-Datei sein oder hast Du eventuell auch eine gif- oder jpg-Datei?
    Dann geht es über eine Base64 Codierung und einen DXL-Import.


    Gruß
    Dirk

  • Da ich die Dateien selber per Python-Programm baue, kann ich (fast) jedes beliebige Format nutzen. Ich kenne mich mit den Details der einzelnen Grafik-Formate allerdings nicht besonders aus...


    Die Grafik muss aber nachträglich automatisiert in das Dokument eingebunden werden können!

    • Offizieller Beitrag

    suche mal im Forum nach Base64 und dxlImport, da gibt es schon Code.


    Base64 Codierung:

    Code
    ´doc … NotesDocument-Objekt
    ´streamin … NotesStream-Objekt (Bild-Datei)
    Dim body As NotesMimeEntity
    Set body = doc.CreateMIMEEntity
    Call body.SetContentFromBytes(streamin, "image/gif", ENC_NONE)
    ´ Call body.SetContentFromBytes(streamin, "image/jpeg", ENC_NONE)
    body.EncodeContent(ENC_BASE64)


    DXL-Import:
    - XML-Stream zusammenbauen
    - Stream importieren


    Gruß
    Dirk

    • Offizieller Beitrag

    in der Designer-Hilfe ist ein Beispiel, wie Du eine Datei in einen Stream lädst.


    Gruß
    Dirk

    Rein logisches Denken verschafft uns keine Erkenntnis über die wirkliche Welt.
    Alle Erkenntnis der Wirklichkeit beginnt mit der Erfahrung und endet mit ihr.
    Alle Aussagen, zu denen man auf rein logischen Wegen kommt, sind, was die Realität angeht, vollkommen leer.
    Albert Einstein