Beiträge von wpsupport

    Ihr code läd einen Text mit mehreren Absätzen in einen einzelnen Absatz:

    RTFData.FirstPar.LoadFromStream(Stream, 'WPT');

    Richtig wäre es, den Text in die Textbox selber zu laden

    RTFData.RTFText.LoadFromStream

    Nachdem das beschriebene Problem aber nicht nachvollziehbar ist, bitte ich um Überprüfung der übergebenen Daten. Vermutlich ist dort bereits eine Parent-Child Struktur vorhanden, was dann ein Problem darstellen würde. (Für das WPTools nichts kann!)

    Beim ersten klick auf eine Textbox wird diese markiert, dafür entsteht eine Selektion im Header, wenn die Textbox dort verankert ist. Das ist auch sInnvoll, da die Textbox ja dem Header "gehört".

    Ein zweiter klick wechselt dann direkt in die Textbox.

    Wenn Sie diese Verhalten abändern wollen dann tut es diese event handler im event TextObjectMouseDown:

    Zitat

    ... und ich möchte es vor Veränderung (löschen, übertippen usw) schützen, was aber auch nicht wie bei MergeFields funktioniert!

    Das TextFeld soll gar nicht wie ein merge field funktionieren, es ist was komplett anderes und hat andere Vorzüge aber auch Schwächen. Z.b. kann der Text darin nicht umbrechen. Daher verstehe ich die Kritik nicht.

    Ein Textfeld ist schlicht ein Zeichen/Symbol

    um eine Seitennummer einzufügen mit einem bestimmten Aussehen geht das dann so

    WPRichText1.CurrAttr.BKColor := WPRichText1.CurrAttr.ColorToNr(clGray,true);

    WPRichText1.CurrAttr.AddStyle([afsProtected]);

    WPRichText1.InputTextFieldName('PAGE');

    WPRichText1.CurrAttr.DeleteStyle([afsProtected]);

    WPRichText1.ProtectedProp := WPRichText1.ProtectedProp + [ppProtected];

    OnMailMergeGetText wird nicht ausgelöst denn es handelt sich nicht im ein merge Feld. Diese Felder bestehen ja aus start- und end-tags und den text (oder Bild) dazwischen kann man ersetzen oder auslesen. U.a. in dem event OnMailMergeGetText.

    InputTextField(wpoPageNumber) fügt ein TextObjekt mit dem Namen "PAGE" ein. Diese Feld kann man im event TextObjGetTextEx sowohl mit Text belegen als auch rendern.

    Am einfachsten wäre es aber dem Textfeld einfach einen grauen Hintergrund zuzuweisen, wie es auch bei normalem text möglich ist.

    Generell werden einzelne Buchstaben die in einem Absatz "platz haben" sofort eingefügt. Wenn der Absatz (oder text in Zelle) umbricht muss neu formatiert werden, das ist komplex und kann etwas dauern, aber normalerweise nicht 1 sec. Generell ist WPTools eine der schnellsten WordProzessor Komponenten.

    Damit man schneller tippen kann, verwendet das TWPRichText einen puffer welcher beim Tippen Zeichen aufnimmt. Dieses Verhalten wird durch das $DEFINE USE_INPUTBUFFER in WPCTRMemo.pas aktiviert und kann somit durch Abschalten dieses symbols deaktiviert werden.

    Danke für die RTF Dateien.

    In diesen sind die Elemente gespeichert, z.b. Word wird sie aber nicht anzeigen da es proprietäre Erweiterungen sind.

    Sie können mit wPDF nach PDF ausgeben, dann wird es so wie im Editor erscheinen egal wo and wann Sie die PDF wieder anzeigen.

    Hallo,

    aufgrund des Konzepts von WPTools müsste eigentlich alles was auch im Editor angezeigt wird, auch beim Ausdruck erscheinen.

    Es kann aber sein, dass dazwischen ein Save&load stattfindet - hier könnten Elemente verloren gehen, die von Speicherformat nicht unterstützt werden. WPT würde alles speichern.

    wpraNotOnFirstAndLastPages macht eigentlich keinen Sinn, wenn Sie sowieso den event OnGetSpecialText verwenden, da würde ich immer wpraNamed nehmen.

    Wird denn OnGetSpecialText beim Ausdruck korrekt, also mit der richtigen Seitennummer aufgerufen? Wie ist die Anzeige?

    Damit soll es gehen:

    + the command COMPDF_Zoom can now be used with the string parameters

    StrPar='XYWHx,y,w,h' to scroll to the PDF coordinates x,y,w and h (72 dpi on the page)

    StrPar='PXYWHp,x,y,w,h' to scroll to the PDF coordinates x,y,w and h on page p

    WPViewPDF 4.7.2.0 release 18.3.2019

    + the command COMPDF_Zoom can now be used with the string parameters

    StrPar='XYWHx,y,w,h' to scroll to the PDF coordinates x,y,w and h (72 dpi on the page)

    StrPar='PXYWHp,x,y,w,h' to scroll to the PDF coordinates x,y,w and h on page p

    WPViewPDF 4.7.1.2 release 7.3.2019

    - fixes problem with 64bit DLLs in last build - they were not loading

    WPViewPDF 4.7.1.1 release 2.3.2019

    * PLUS edition: improved form handling

    WPViewPDF 4.7.1.0 release 27.2.2019

    + added some support for FunctionType 4 separation color

    - fixed "stack error" exception

    WPViewPDF 4.7.0.0 release 25.2.2019

    + new command: COMPDF_SetAnnotEditModes modifies the way the TAB key works in formular mode

    * improved TAB handling and scrolling formular mode

    WPViewPDF 4.6.5.1 release 21.1.2019

    + new: Drag&Drop support with Delphi and TWPViewPDF.

    To use assign events OnDragOver and OnDragDrop.

    - fix stability problem when drag&drop was used with Delphi 10.3 Rio in 64bit application.

    I see, there was something planned ....

    This code in Execute will fix the problem.

    dia.ToolBar.sel_ActionIcons := [SelSave, SelPrint, SelPrintSetup];

    if wpprvPrint in FDisabledButtons then

    dia.ToolBar.sel_ActionIcons := dia.ToolBar.sel_ActionIcons - [SelPrint];

    if wpprvPrintDialog in FDisabledButtons then

    dia.ToolBar.sel_ActionIcons := dia.ToolBar.sel_ActionIcons - [SelPrintSetup];

    if wpprvSaveAs in FDisabledButtons then

    dia.ToolBar.sel_ActionIcons := dia.ToolBar.sel_ActionIcons - [SelSave];

    Im Manual stehen Information darüber.

    Vor allem "Introduction" ist sehr wichtig. Wichtig auch: Shared Styles and Style Scroller

    The event OnInitializeRTFDataObject can be used to assign a global TWPRTFProps component.

    (demo "H) Techniques\Styles\GlobalStyles"),

    Do not forget to call DetachRTFData before the editor is destroyed.

    Die konkrete Implementierung ist Projekt abhängig. Ich empfehle Kunden die kostenpflichtige Beratung in Anspruch zu nehmen, da WPTools extrem schnelle und effektive Lösungen erlaubt, die aber nicht direkt ins Auge fallen. So können Lösungen gefunden werden, die nicht gegen die Architektur von WPTools arbeiten und stattdessen diese optimal ausnutzen. Vorschläge dafür passen aber aus verschiedenen Gründen nichts ins Forum. Fragen gerne an support@wptools.de.