Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst PDF anzeigen, Positionsfeld für Text anzeigen, bewegen

Mitglied: ahstax

ahstax (Level 2) - Jetzt verbinden

22.09.2013 um 18:49 Uhr, 2250 Aufrufe, 2 Kommentare, 1 Danke

Hallo,

ich würde gerne in PDF-Dokumente auf der ersten Seite einen Text einfügen. Mit iTextSharp klappt das ziemlich einfach.
Ich würde aber nun gerne die erste Seite des PDFs anzeigen lassen, darin einen Rahmen darstellen, der die Größe des einzufügenden Textes (eingegeben in eine TextBox) hat und mit der Maus verschiebbar ist.
Sinn? Der eingefügte Text soll keinen bestehenden Text überdecken.

Wo und mit welchem vb.net-Zauber könnte ich denn da ansetzen?

Ich bin gespannt auf Hinweise und Anregungen!!!

Neugierige Grüße,
Andreas
Mitglied: colinardo
24.09.2013 um 09:22 Uhr
Hallo Andreas,
klingt also wolltest du hier einen rudimentären PDF-Editor basteln
Du könntest das so lösen: Du baust in VB.Net eine Form mit dem Adobe Reader ActiveX der dir das PDF in einer festen Zoomstufe anzeigt(ganze Seite), in dieser Form fängst du die Mausposition über dem Control ab und speicherst sie bei einem Klick in einer Variablen; diese Koordinaten rechnest du dann auf relative PDF-Seitengröße um und fügst mit iTextSharp den Text an der gewünschten Stelle ein.
Ansonsten wäre eine Alternative nach einem bestimmten Text im PDF mit iTextSharp zu suchen und anhand dessen Position deinen Text positionieren.

Grüße Uwe
Bitte warten ..
Mitglied: ahstax
24.09.2013 um 16:31 Uhr
Hallo Uwe,

Danke für Deine Antwort.

Ein etwas geänderter Ansatz meinerseits führte zu folgendem Zwischenergebnis:
Das PDF wird geladen, die erste Seite abgetrennt (itextsharp) und in ein tiff umgewandelt (com.adobe.acrobat.tiff).
In das tiff wird der einzufügende Text (3 Zeilen mit unterschiedlicher Formatierung) eingesetzt (Graphic.DrawString(Text, Font, Brush, Position)).
Um den eingefügten Text wird ein Rechteck gezeichnet.
Das tiff wird in einer Picturebox angezeigt.

Leider ist das Recheckt höher, als der Text...
01.
Text1 = "Texttexttext" 
02.
Font1 = New System.Drawing.Font("Arial", 14, FontStyle.Regular) 
03.
Position1 = New Point(8, 5) 
04.
 
05.
Text2 = txtBoxText.Text 
06.
Font2 = New System.Drawing.Font("Arial", 28, FontStyle.Regular) 
07.
Position2 = New Point(3, 5 + 16) 
08.
 
09.
Text3 = txtBoxUnserZeichen.Text 
10.
Font1 = New System.Drawing.Font("Arial", 14, FontStyle.Regular) 
11.
Position3 = New Point(8, 5 + 16 + 35) 
12.
 
13.
        Dim stringSize1 As New SizeF 
14.
        Dim stringSize2 As New SizeF 
15.
        Dim stringSize3 As New SizeF 
16.
        Dim stringSize As New SizeF 
17.
 
18.
        stringSize1 = Graphic.MeasureString(Text1, Font1) 
19.
        stringSize2 = Graphic.MeasureString(Text2, Font2) 
20.
        stringSize3 = Graphic.MeasureString(Text3, Font1) 
21.
        stringSize.Height = stringSize1.Height + stringSize2.Height + stringSize3.Height 
22.
 
23.
        If stringSize1.Width >= stringSize2.Width And stringSize1.Width >= stringSize3.Width Then 
24.
            stringSize.Width = stringSize1.Width 
25.
        Else 
26.
            If stringSize2.Width >= stringSize1.Width And stringSize2.Width >= stringSize3.Width Then 
27.
                stringSize.Width = stringSize2.Width 
28.
            Else 
29.
                If stringSize3.Width >= stringSize1.Width And stringSize3.Width >= stringSize2.Width Then 
30.
                    stringSize.Width = stringSize3.Width 
31.
                End If 
32.
            End If 
33.
        End If 
34.
 
35.
        Dim Zeilenabstand As Integer = Font1.GetHeight 
36.
        'String auf Bild zeichnen 
37.
        Graphic.DrawString(Text1, Font1, Brush, Position1) 
38.
        Graphic.DrawString(Text2, Font2, Brush, Position2) 
39.
        Graphic.DrawString(Text3, Font1, Brush, Position3) 
40.
 
41.
        Graphic.DrawRectangle(New Pen(Color.Red, 1), 8.0F, 5.0F, CInt(stringSize.Width), CInt(stringSize.Height)) 
42.
 
43.
 
Woran kann das liegen?
Und irgendwie habe ich festgestellt, dass unterschiedliche Größenangaben (zumindest beruhend auf unterschiedlichen Basen) verwendet werden, kann das sein? (Schriftgröße, image.height...)

Neugierige Grüße,
Andreas



Der Vollständigkeit halber:meine nächste Schritte jetzt:
Rechteck in die richtige Größe bringen
Rechteck (einschließlich Text) beweglich machen
Bitte warten ..
Ähnliche Inhalte
VB for Applications
Text in PDF lesen und nutzen
gelöst Frage von fautec56VB for Applications6 Kommentare

Hallo zusammen, meine erste Frage in diesem Forum betrifft das umbenennen von PDF-Dateien, die mit einem OCR-Scan erstelle wurden. ...

JavaScript

Datumabhängiger Text in HTML anzeigen

gelöst Frage von adm2015JavaScript4 Kommentare

Hallo Zusammen, ich bin verzweifelt auf der Suche nach einem JavaScript, welches einen bestimmten Text zu einem bestimmten Datum ...

Webbrowser

Firefox kann PDF-Dateien nicht anzeigen

gelöst Frage von HertieWebbrowser7 Kommentare

Hallo zusammen, nach mehreren Jahren Abstinenz melde ich mich mit neuem Job und neuen Problemen zurück. Heute geht es ...

Grafik

PDF-Tool zum Anzeigen der letzten Scans

Frage von TlBERlUSGrafik7 Kommentare

Hallo Kollegen, ich habe momentan die Anforderung (für einen Scanner) ein PDF-Tool zu organisieren. Anforderungen sind: - Thumbnail/Abbild der ...

Neue Wissensbeiträge
Router & Routing

Endlich: Reines Kabel-TV Modem in D erhältlich !

Information von aqui vor 2 TagenRouter & Routing9 Kommentare

Mit dem Technicolor TC4400-EU Modem sind nun auch Breitband Router ohne integriertes Modem oder Firewalls wie z.B. die pfSense ...

Netzwerkgrundlagen
The Illustrated TLS Connection
Information von Lochkartenstanzer vor 3 TagenNetzwerkgrundlagen

Moin, Unter findet man eine gelungene Erläuterung von TLS. Fördert sehr das verständnis darüber, was da passiert. lks

Windows 10

Zuverlässiger Remove-AppxProvisionedPackage Ausführen in W10-1803

Tipp von NetzwerkDude vor 4 TagenWindows 104 Kommentare

Moin, Remove-AppxProvisionedPackage hat in 1709 recht zuverlässig funktioniert, in 1803 ist es leider so das es gerne mail failed ...

LAN, WAN, Wireless
Erfahrung mit dem tplink eap115-wall
Erfahrungsbericht von fisi-pjm vor 4 TagenLAN, WAN, Wireless

Die Hintergründe Als ausgebildeter Fisi und ambitionierter "Hobby ITler" bin ich Netzwerktechnisch immer auf der Suche nach "schönen" Lösungen ...

Heiß diskutierte Inhalte
Netzwerkprotokolle
OpenVPN auf dem Client Verständnisfrage
gelöst Frage von bk900042Netzwerkprotokolle23 Kommentare

Hallo Community, möchte OpenVPN benutzen, um mich über VPN per RDP zu einem Server zu verbinden und auch GIT ...

Windows Server
AD User wird immer wieder gesperrt
Frage von YellowcakeWindows Server14 Kommentare

Hey ich habe einen User (ein GL User - Natürlich was denn sonst) der immer wieder gesperrt wird. Ich ...

Netzwerkmanagement
Netzwerklaufwerk verbinden nicht möglich
gelöst Frage von SteiniMNetzwerkmanagement13 Kommentare

Hallo Leute, ich bin neu hier und brauche eure Hilfe. Danke schon mal im Voraus. Ich habe folgendes Problem: ...

Switche und Hubs
OpenSource oder Freeware zur Verwaltung von Switchen
Frage von JonskezSwitche und Hubs12 Kommentare

Hallo, gibt eine kostenlose Verwaltungssoftware für Switche (überwiegend HP/Aruba)? Es sollte möglich sein, aus der Ferne z.B. die Firmware ...