Bildfeld im Formular
Bildfeld im Formular
Hallo,
habe im angehängten Form ein Bildfeld. Beim Einfügen eines Bildes (proportional) klappt alles einwandfrei.
Beim Einfügen eines großen unbearbeiteten Bildes - was beim späteren User durchaus vorkommen kann - passiert es jedoch, dass das Bildfeld auf die dritte Seite springt und die zweite Seite leer lässt. Die Bildgröße beschränkt sich zwar durch die Breite. Der Rahmen wird aber unschön bist über die Fußzeile hinaus verlängert und die Buttons passen auch nicht mehr richtig.
Frage: Was ist an meinem Form falsch, bzw. kann man die Größe des Felds auf z. B. maximal 18 cm stellen ohne dass ich ne zweite Seite aufmachen muss (also auf das eingestellte Mindestmaß lassen), da nicht jeder zwingend ein Bild einfügt.
Dass das Formular das Bild nicht klein rechnen kann weiß ich, mich stört aber die Dateigröße selbst nicht, nur dass das Bild nicht in einen Maximalrahmen "gezwungen" wird. Und nicht jeder Anwender kann Bildbearbeitung und dat Ding klein rechnen vorm Einfügen.
habe im angehängten Form ein Bildfeld. Beim Einfügen eines Bildes (proportional) klappt alles einwandfrei.
Beim Einfügen eines großen unbearbeiteten Bildes - was beim späteren User durchaus vorkommen kann - passiert es jedoch, dass das Bildfeld auf die dritte Seite springt und die zweite Seite leer lässt. Die Bildgröße beschränkt sich zwar durch die Breite. Der Rahmen wird aber unschön bist über die Fußzeile hinaus verlängert und die Buttons passen auch nicht mehr richtig.
Frage: Was ist an meinem Form falsch, bzw. kann man die Größe des Felds auf z. B. maximal 18 cm stellen ohne dass ich ne zweite Seite aufmachen muss (also auf das eingestellte Mindestmaß lassen), da nicht jeder zwingend ein Bild einfügt.
Dass das Formular das Bild nicht klein rechnen kann weiß ich, mich stört aber die Dateigröße selbst nicht, nur dass das Bild nicht in einen Maximalrahmen "gezwungen" wird. Und nicht jeder Anwender kann Bildbearbeitung und dat Ding klein rechnen vorm Einfügen.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Bildfeld im Formular
Im Exit Event kannst Du die Größe des Bildfeldes ermitteln und ggf. wieder korrigieren, wenn es zu groß geworden ist.
Du brauchst aber noch eine weitere Methode zum Zurücksetzen des Feldes, für den Fall, dass jemand später noch ein kleineres Bild einfügt.
Code: Alles auswählen
var vUnit = "mm",
vHeight = xfa.layout.h(this, vUnit),
vMax = 100;
if (vHeight >= vMax) {
this.h = vMax.toString().concat(vUnit);
}
Bildfeld im Formular
Hallo,
danke für die schnelle Hilfe. Hab das implementiert und das funktioniert auch ganz gut.
Jetzt hab ich aber noch zwei Probleme...
Wenn ich ne maxHöhe von mehr als 120 (im Code warens 100) angebe, schiebt er bei einem großen Bild das Ganze auf Seite 3 und lässt Seite 2 leer. Irgendwie schmeckt ihm die Größe nicht
Für das erwähnte Zurücksetzen hab ich einen Button eingefügt, mit dem das Bild wieder gelöscht werden kann. Zusätzlich wird die Größe wieder auf 52 mm zurückgesetzt, damit ich wieder eine Seite hab.
Füg ich dann das große Bild erneut ein, bleibt die Größe auf 52mm "kleben". Irgendwas muss ich da in der Button-Funktion noch zurücksetzen, weiß aber nicht was?
danke für die schnelle Hilfe. Hab das implementiert und das funktioniert auch ganz gut.
Jetzt hab ich aber noch zwei Probleme...
Wenn ich ne maxHöhe von mehr als 120 (im Code warens 100) angebe, schiebt er bei einem großen Bild das Ganze auf Seite 3 und lässt Seite 2 leer. Irgendwie schmeckt ihm die Größe nicht

Für das erwähnte Zurücksetzen hab ich einen Button eingefügt, mit dem das Bild wieder gelöscht werden kann. Zusätzlich wird die Größe wieder auf 52 mm zurückgesetzt, damit ich wieder eine Seite hab.
Füg ich dann das große Bild erneut ein, bleibt die Größe auf 52mm "kleben". Irgendwas muss ich da in der Button-Funktion noch zurücksetzen, weiß aber nicht was?
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Bildfeld im Formular
Hallo,
ich hab noch etwas getüftelt und gegoogelt und jetzt eine Lösung für mein Problem gefunden und möchte das dem Forum natürlich zurückgeben - wenn es auch wahrscheinlich noch bessere und professionellere Lösungen gibt.
Im angehängten PDF sind die Codes enthalten... (hab auf meinem Heim-PC kein LCD, drum kann ich die Details nicht aus'm Kopf aufsagen (Is auch schon wieder ein paar Tage her). Evtl. hilft's mal den einen oder anderen...
ich hab noch etwas getüftelt und gegoogelt und jetzt eine Lösung für mein Problem gefunden und möchte das dem Forum natürlich zurückgeben - wenn es auch wahrscheinlich noch bessere und professionellere Lösungen gibt.

Im angehängten PDF sind die Codes enthalten... (hab auf meinem Heim-PC kein LCD, drum kann ich die Details nicht aus'm Kopf aufsagen (Is auch schon wieder ein paar Tage her). Evtl. hilft's mal den einen oder anderen...

Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Bildfeld im Formular
Ach ja..
und Danke noch an Radzmar für die schnelle Hilfe. Wahr der entscheidende Anstoß für die Lösung.
und Danke noch an Radzmar für die schnelle Hilfe. Wahr der entscheidende Anstoß für die Lösung.
Bildfeld im Formular
Das Skript zum Zurücksetzen des Bildfeldes in deinem Formular funktioniert zwar, ist aber Quatsch, denn der Teil this.h = Formular1.Gesamtrahmen.TeilformBild.optionalesBild.rawValue.hight; liefert nur undefined zurück, weil rawValue keine Eigenschaft hight hat.
Du könntest genauso gut this.h = undefined schreiben.
Ändere das Skript mal wie folgt:
Und das zweite Skript zum Setzen von minH würde ich anstelle in mouseUp im change Event verwenden, weil ja manch einer auch mit Tastatur anstelle mit Maus arbeitet.
Du könntest genauso gut this.h = undefined schreiben.
Ändere das Skript mal wie folgt:
Code: Alles auswählen
var vUnit = "mm",
vHeight = xfa.layout.h(this, vUnit),
vMax = 120;
if (vHeight >= vMax) {
this.h = vMax.toString().concat(vUnit);
} else if (vHeight < vMax) {
this.h = vHeight.toString().concat(vUnit);
}
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Bildfeld im Formular
Nun ja, zumindest hab ich's mit meinem dilettantischen Wissen versucht
.
Funktioniert natürlich einwandfrei...
Mein's war halt irgendwie von hinten durch die Brust ins Auge.
Danke für die Hilfe...

Funktioniert natürlich einwandfrei...
Mein's war halt irgendwie von hinten durch die Brust ins Auge.
Danke für die Hilfe...
Bildfeld im Formular
Kann man das Bild aus der PDF auch als einzelnes Bild heraus speichern?
Oder gibt es eine vergleichbare Lösung?
Danke und Gruß
Oder gibt es eine vergleichbare Lösung?
Danke und Gruß
Bildfeld im Formular
Ich kenne da einen Weg "über Bande", der aber nur mit Acrobat und nicht im Reader funktioniert.
Man kann die Daten eines Bildfeldes ja auslesen und diese dann als Bilddatei an das aktuelle PDF anhängen.
Aus dem Panel für die Anhänge kann man das Bild dann öffnen bzw. lokal speichern.
Man kann die Daten eines Bildfeldes ja auslesen und diese dann als Bilddatei an das aktuelle PDF anhängen.
Aus dem Panel für die Anhänge kann man das Bild dann öffnen bzw. lokal speichern.
Code: Alles auswählen
var sSource = xfa.resolveNode("Formular1.Page.#subform.ImageField1[0]").value.image,
oAttachments = event.target.dataObjects,
nCount = oAttachments !== null ? oAttachments.length : 0,
sBase64Data = sSource.value.replace(/\n/gm, ""),
sMimeType = sSource.contentType,
oReadStream = util.streamFromString(sBase64Data),
oDecodedStream = Net.streamDecode(oReadStream, "base64"),
oNewAttachment = "ExportBild_" + nCount.toString() + "." + sMimeType.replace("image/", "");
event.target.createDataObject(oNewAttachment, "", sMimeType);
event.target.setDataObjectContents(oNewAttachment, oDecodedStream);
event.target.viewState = {
overViewMode: 7
};