Das Notes Forum

Domino 9 und frühere Versionen => ND8: Entwicklung => Thema gestartet von: rar am 14.03.13 - 10:21:22

Titel: Überprüfen ob ein rtf ein eingebettetes Bild enthält
Beitrag von: rar am 14.03.13 - 10:21:22
Hallo zusammen,
ich habe in einer DB neben einem normalen rtf noch ein Rich Text Lite Feld, in dem der User nur Fotos importieren kann.
In einem Agent möchte ich dann eine Funktion ausführen, wenn in dem RTLF ein Bild eingebettet ist.

Irgendwie schaff ich es aber nicht rauszufinden ob da ein Bild drin ist oder nicht.

Probiert hab ich es in verschiedensten Variationen mit:
 - Forall o In rtitem.EmbeddedObjects -> bringt immer Type mismatch
 - IsEmpty(rtitem.EmbeddedObjects) -> ist immer true
 - RichtextNavigator.GetFirstElement -> da gibt es kein Type für eingebettete Bilder
Hat aber leider nix geklappt.

Jetzt frag ich als Workarount einfach mit "if rtfVabeda.ValueLength > 500" die Größe ab. Macht mich aber irgendwie nicht glücklich.
Habt ihr da eine Idee wie das gehen könnte?

lG
-daniel
Titel: Re: Überprüfen ob ein rtf ein eingebettetes Bild enthält
Beitrag von: Tode am 14.03.13 - 10:22:46
Ulrich (eknori) hatte da mal was, um solche Images zu identifizieren (ich meine über die C-Api, weil es per default nicht geht)... Such mal nach eknori und embedded images hier im Forum oder eben in seinem Blog...
Titel: Re: Überprüfen ob ein rtf ein eingebettetes Bild enthält
Beitrag von: rar am 14.03.13 - 10:37:41
Danke dir Torsten,
Hab das hier gefunden: http://www.eknori.de/2011-02-22/entwicklercamp-session-samples/ (http://www.eknori.de/2011-02-22/entwicklercamp-session-samples/)
Vielleicht ist da was brauchbares dabei.
Titel: Re: Überprüfen ob ein rtf ein eingebettetes Bild enthält
Beitrag von: it898ur am 14.03.13 - 11:20:08
Ansonsten hilft nur ein DXL-Export und dort den Inhalt des Feldes prüfen.

Gruß

André
Titel: Re: Überprüfen ob ein rtf ein eingebettetes Bild enthält
Beitrag von: pram am 14.03.13 - 12:07:42
Mit Bordmitteln ist eine Prüfung auf "valueLength" am einfachsten, aber 500 ist ein bisschen hoch (ein leeres Item hat ~110)
Allerdings ist so eine Prüfung nicht sauber (wenn sie auch in 99,9% der Fälle das gewünschte Ergebnis liefern wird)

Wenn dir das nicht ausreicht, würde ich den Weg über DXL gehen.
Ein DXL-Export ist vermutlich einfacher zu implementieren, als mit der C-Api (ausserdem ist es dann auch Plattformübergreifend)
Du musst dann nur noch nach <gif>/<jpg> und ggf nach <png>/<notesbitmap> im DXL suchen.

Gruß
Roland