Archive for the ‘PDF’ Category

Direktes Drucken von PDF-Dateien unter Windows und wie man die Farbprofilunterstützung eines Druckers testen kann

27 Oktober 2016

Es gibt viele Möglichkeiten Dateien unter Windows auszudrucken. Das witzige ist, dass oft Dateien mehrfach aufbereitet werden, bis sie überhaupt am Ende beim Drucker landen. Wäre es nicht toll, wenn man z. B. eine PDF-Datei zum Drucken hätte, wenn man diese unter Umgehung des Druckertreibers direkt an den Drucker senden könnte?

Wie man RAW-Dateien direkt an einen Drucker unter Windows senden kann, wurde bereits hier beschrieben: https://newyear2006.wordpress.com/2016/10/17/direkte-kommunikation-mit-druckern-unter-windows-von-powershell-aus/. Diese Variante kann man nun ausbauen, um eben auch PDF-Dateien ohne weitere Zwischenbearbeitung drucken zu können. Natürlich funktioniert diese Methode nur, wenn der Zieldrucker auch PDF-Dateien direkt verarbeiten kann! Im Zweifel gilt probieren über studieren.

Wir brauchen also die Funktion Out-RAWPrinter aus dem oben verlinkten Blogartikel. Dann müssen wir die PDF-Datei laden:

$pdf = Get-Content –Path C:\Temp\Test.PDF –Encoding Byte

$pdf enthält nun ein Bytearray. Leider lässt sich dies noch nicht direkt an Out-RawPrinter übergeben, denn dem Drucker muss noch mitgeteilt werden, welche Sprache bzw. Dateiformat da kommt. Dies ist aber ganz einfach über die Printer Job Language PJL möglich. Hier die Referenz dazu: http://h20565.www2.hp.com/hpsc/doc/public/display?docId=emr_na-bpl13208. Erfunden wurde die PJL von HP, wird aber mittlerweile auch von anderen Druckerherstellern verwendet bzw. verstanden.

In unserem Fall soll die Sprache auf PDF gestellt werden. Dies erreicht man, indem man @PJL ENTER LANGUAGE = PDF an den Drucker sendet. Damit der Drucker aber auch darauf achtet und reagiert muss noch seine Aufmerksamkeit durch einen spezielle Zeichenfolge erregt werden, indem man {ESC}%-12345X vorab und hinterher sendet. In Kombination sieht das dann so aus:

# {ESC}%-12345X
$kb=@(27,37,45,49,50, 51, 52, 53, 88)
# Zeilenumbruch
$lfb=@(13, 10)
# Sprache einstellen:
$lb=[System.Text.Encoding]::ASCII.GetBytes("@PJL ENTER LANGUAGE = PDF")
# alles Zusammensetzen
$out = $kb + $lb + $lfb + $pdf + $kb

In $out steht nun das komplette Bytearray. Das sieht dann z. B. so aus:

00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

1B 25 2D 31 32 33 34 35 58 40 50 4A 4C 20 45 4E  .%-12345X@PJL EN
54 45 52 20 4C 41 4E 47 55 41 47 45 20 3D 20 50
  TER LANGUAGE = P
44 46
0D 0A
25 50 44 46 2D 31 2E 34 0D 0A 25 E2  DF..%PDF-1.4..%â
E3 CF D3 0D 0A 25 0D 0A 25 77 50 44 46 33 20 62  ãÏÓ..%..%wPDF3 b
79 20 57 50 43 75 62 65 64 20 47 6D 62 48 20 56  y WPCubed GmbH V
33 2E 36 35 5B 34 30 32 36 35 33 32 31 36 5D 20  3.65[402653216]

am Ende so:

65 65 30 63 31 32 32 62 64 32 66 38 63 34 3E 5D  ee0c122bd2f8c4>]
0D 0A 2F 49 6E 66 6F 20 32 20 30 20 52 0D 0A 3E  ../Info 2 0 R..>
3E 0D 0A 73 74 61 72 74 78 72 65 66 0D 0A 31 39  >..startxref..19
37 32 35 31 0D 0A 25 25 45 4F 46 0D 0A 1B 25 2D  7251..%%EOF...%-
31 32 33 34 35 58
                                12345X

Und jetzt noch alles an den Drucker:

$p=Get-Printer|Out-GridView -PassThru -Title "Bitte Drucker wählen"
Out-RawPrinter -Printer $p -ByteArray $out -DocTitle "PDF Direktdruck!"

Verwendet man diese Methode, muss man aber damit rechnen, dass der Ausdruck manchmal anders aussieht, als erwartet. Denn PDF ist nicht immer gleich PDF, bzw. PDF kann je nach Gerät unterschiedlich interpretiert werden.

Was kann man damit anstellen? Ja man könnte sein Gerät z. B. auf direkte Kompatibilität von ICC v4 Profil Farbraumunterstützung testen http://www.color.org/version4pdf.pdf.

$iccv4=(Invoke-WebRequest -Uri http://www.color.org/version4pdf.pdf).Content
$out = $kb+$lb+$lfb+$iccv4$x+$kb
$p=Get-Printer|Out-GridView -PassThru -Title "Bitte Drucker wählen"
Out-RawPrinter -Printer $p -ByteArray $out -DocTitle "PDF Direktdruck!"

Spannend so eine Sache!

Advertisements

3D-PDF-Dateien mit Open-Source Tools erstellen

13 Juli 2015

Da heute ein Kunde angefragt hatte, ob man .STL-Dateien von 3D-Objekten in PDF-Dateien konvertieren könnte, hab ich auf die Schnelle recherchiert. Tatsächlich scheint es in der Richtung brauchbare Tools zu geben:

http://www.goermezer.de/content/view/486/616/

Im Prinzip funktioniert es so:

  1. Export der STL aus CAD-System
  2. Import STL in Meshlab und Export als U3D .tex-Datei
  3. Konvertieren der .tex-Datei mit pdflatex nach 3D-PDF

So einfach geht das!

Meshlab ist ein Open-Source Programm: http://meshlab.sourceforge.net/ und pdflatex ist ein Kommando von Miktex einem LaTEX-Ableger unter Windows, http://miktex.org/.

3D-PDF läuft auch unter dem Namen PDF/E: https://en.wikipedia.org/wiki/PDF/E.

Resource Kit für Windows Server 2012 R2

27 November 2013

Die klassischen Resource Kit Bücher von Microsoft für die jeweiligen Betriebssysteme dürften der Vergangenheit angehören. Scheinbar hat aber Microsoft doch ein Herz für Leute, die gerne die wichtigen Informationen Offline zur Hand haben möchten. Nun gibt es die betreffenden Bereiche aus dem Technet in einer einzigen, riesigen PDF-Datei. Darin enthalten sind alle Themen aus der Technet Library wo Server 2012 und Server 2012 R2 betreffen.

http://www.microsoft.com/en-us/download/details.aspx?id=41182&WT.mc_id=rss_alldownloads_all

Achso, wem das zu wenig sein sollte zum Lesen, der könnte an weiteren eBooks von MS gefallen finden: http://social.technet.microsoft.com/wiki/contents/articles/11608.e-book-gallery-for-microsoft-technologies.aspx

Achtung jetzt kommen ZUGFeRD und Core CII

20 März 2013

Nein Core CII ist kein neuer Intel Prozessor oder dergleichen es steht für Core Cross-Industry-Invoice abgekürzt Core CII. ZUGFeRD steht für “Zentrale User Guidelines für elektronische Rechnungen in Deutschland”. Der ganze Vorgang wird, wie immer, von der EU in Brüssel vorangetrieben und läuft dort unter dem Begriff e-Invoicing. Das Bestreben ist, nach SEPA für die “Single European Payment Area” nun auch Rechnungsstellung und Weiterverarbeitung EU-weit einheitlich zu regeln.

OK, wenn wir schon bei den ganzen Kürzeln sind, da spielt dann PDF/A-3 dann auch noch eine Rolle, für künftige PDF-Rechnungen, welche gleich einen Edifact bzw. XML-Anhang mit den Core CII Daten haben. Da Edifact ein uralter Standard ist, hat man sich mittlerweile auf etwas neueres geeinigt: UN/CEFACT, komplett auf XML basierend und mit XML-Schemas versorgt, so dass eine syntaktische Prüfung der Dateien jederzeit möglich ist. Da wir schon bei Rechnungen sind, gleich noch der Hinweis auf die Richtlinie 2010/45/EU die ab 1.1.2013 in Kraft getreten ist.

So jetzt bin ich vom Thema abgeschweift, wo waren wir? Achso Core CII, wollen wir hoffen das der Kern tatsächlich nur einen Bruchteil der UN/CEFACT Spezifikation umfasst.

Das wird alles noch ein riesen Spaß.

http://ec.europa.eu/internal_market/payments/einvoicing/index_en.htm
http://www.ferd-net.de/upload/FeRD-TF-Datenformate.pdf
http://de.wikipedia.org/wiki/EDIFACT
http://www.unece.org/cefact.html –>Outputs–>Technical Specifications
http://www.unece.org/fileadmin/DAM/cefact/xml/UNCEFACT+XML+NDR+V3p0.pdf
http://ec.europa.eu/taxation_customs/taxation/vat/traders/invoicing_rules/
index_de.htm

Flash oder PDF Plugin bei Google Chrome abstellen

23 Mai 2012

Chrome bringt seine eigene PDF und Flash Plugins mit. Das hat alles Vor- und Nachteile. Um Flash loszuwerden genügt es also nicht einfach Flash vom Rechner zu deinstallieren und die Neuinstallation zu unterbinden.

Um ein ein Plugin in Chrome abzuschalten geht man auf Chrome://plugins, dort bekommt man dann eine Auflistung der verfügbaren Plugins. Hier muss man einfach auf Deaktivieren klicken und Chrome neu starten, dann ist der Fall erledigt.

Thunderbird und Acrobat Reader kann keine Verbindung zum E-Mail-Programm herstellen

4 Mai 2011

In einem Windows 7 64Bit Professional System war Mozilla Thunderbird 3.1.7 32Bit mit Acrobat Reader X 10.0.1 32Bit installiert.

Wenn versucht wurde von Acrobat direkt das Dokument als E-Mail zu versenden, kam immer folgende Meldung:

Acrobat kann keine Verbindung mit Ihrem E-Mail-Programm herstellen.

Unter Systemsteuerung->Programme->Standardprogramme bei Standardprogramme festlegen war Thunderbird für alle Mailprotokolle eingetragen.

Erst das setzen über Programmzugriff auf Computerstandards von Benutzerdefiniert und da von “Aktuelles E-Mail-Programm verwenden” explizit auf Mozilla Thunderbird, brachte den gewünschten Erfolg.

Adobe Acrobat Reader X und E-Mail-Versand

21 November 2010

Wenn man seither im Adobe Reader in der Werkzeugleiste oben das Brief-Symbol für den E-Mailversand aktiviert hatte, konnte man direkt das aktuelle Dokument in einer neuen E-Mail vom Standard-E-Mailprogramm versenden. Es musste nur noch der Empfänger eingetragen werden und schon konnte es losgehen.

Beim Adobe Reader X ist dies in der Voreinstellung nun anders. Es erscheint zwar nach der Installation bereits das Briefsymbol allerdings öffnet ein klick darauf den Freigabebereich an der rechten Seite, wo man verschiedene Dinge mit erreichen kann.

Wenn man die alte Funktionalität wieder haben möchte, der kann unter Bearbeiten->Voreinstellungen->Online-Dienste bei den Freigabefenster-Optionen das Häkchen für “Freigabefenster beim Senden von E-Mail-Anlage verwenden” entfernen.

Adobe Acrobat Reader 10 bzw. Reader X direkt herunterladen

21 November 2010

So mal sehen was die neue Sandbox im Acrobat Reader X bringt.

Verzeichnis: ftp://ftp.adobe.com/pub/adobe/reader/win/10.x

EXE:
ftp://ftp.adobe.com/pub/adobe/reader/win/10.x/10.0.0/de_DE/
AdbeRdr1000_de_DE.exe

Acrobat Reader startet nicht wegen Problem mit HP ToolboxFX

16 November 2010

Beim Versuch PDF-Dateien zu öffnen öffnete sich der Acrobat Reader nicht (hier Version 9.4). Nachdem das Phänomen ein paar Mal aufgetreten war und nie klar war, warum das ganze passiert, brachte eine eingehende Analyse den Schuldigen zum Vorschein: Die HP ToolboxFX. Der betreffende Rechner war mit einem Deskjet Drucker von HP ausgestattet.

Immer wenn der Acrobat Reader gestartet wird, wollte sich dieser natürlich auch über die vorhandenen Drucker schlau machen. Also wurden die üblichen WINSPOOL API-Aufrufe eingeleitet. Doch bei diesen Aufrufen muss der HP ToolboxFX irgendwas quer gelaufen sein.

Anstatt nun aber Meldung zu machen, scheint die HP-Toolbox abgestürzt zu sein und hat es nicht geschafft dies kund zu tun. Bei diesem Vorgang hat sie gleich noch die Druckerwarteschlange vom Betriebssystem (hier Vista) mit lahmgelegt.

Durch die Analyse mittels Sysinterals Process Explorer wurde der Aufruf von WINSPOOL Funktionen entdeckt, weshalb als erste Reaktion einfach mal der Druckerwarteschlangendienst neu gestartet wurde. Genau hier kam die Wendung. Als der Dienst nicht beendet werden konnte, ging im Hintergrund plötzlich die Meldung der HP Toolbox FX auf:

HP ToolboxFX hat einen Fehler festgestellt und kann nicht wiederhergestellt werden.

Starten Sie HP ToolboxFX oder Ihren Computer neu. Sie können keine Meldungen empfangen. Verwenden Sie alternativ dazu andere HP ToolboxFX-Funktionen, bis HP ToolboxFX neu gestartet wurde.

Windows-Version: Win32NT – 6.0.6002.0 HP ToolboxFX Version: 002.005.00191

In der englischen Fassung lautet die Meldung:

HP ToolboxFX has encountered an error and can not recover.

Please re-start HP ToolboxFX, or re-start your PC. You will not be able to receive alert messages, or use other HP ToolboxFX features until HP ToolboxFX has been restarted.

Windows version: Win32NT – 5.1.2600.0
HP ToolboxFX version: 002.005.00191

In einem anderen Fall war die Version von ToolboxFX 004.012.00146. Die Version 004.012.00146 ist angeblich die neueste Version. Danach war auf einmal alles gut!

Also wer ist Schuld? Hewlett Packard, die es einfach nicht mehr gebacken bekommen vernünftige Treiber auf die Beine zu stellen. Wo wir gerade beim Thema HP sind: Es ist grauenhaft da nach Treibern für Geräte zu suchen die gerade mal 2 Jahre alt sind. Irgendwelche Möchtegerns haben bei einer Systemumstellung alles möglich an sinnvollen Informationen ins Nirwana geschickt. Keine Treiber mehr, keine Handbücher mehr, keine Spezifikationen. Ein einziges Durcheinander. Selbst ein Anruf an der Hotline bringt nur ein: Ja wissen wir. 64Bit Treiber? Was ist das?

Es ist kein Ende in Sicht.

Frühere Beitrage mit HP Beteiligung:

https://newyear2006.wordpress.com/2010/05/03/hp-universal-printer-driver-upd-druckertreiber-macht-probleme-unter-windows-7/

https://newyear2006.wordpress.com/2008/11/18/usb-hp-drucker-taucht-nicht-unter-windows-vista-auf/

Adobe Acrobat Reader 9.2 direkt herunterladen

18 Oktober 2009

Endlich gibt es das längst fällige Gesamtupdate mit den aktuellen Sicherheitspatches für den Acrobat Reader.

Verzeichnis:
ftp://ftp.adobe.com/pub/adobe/reader/win/9.x/9.2/

EXE:
ftp://ftp.adobe.com/pub/adobe/reader/win/9.x/9.2/deu/
AdbeRdr920_de_DE.exe

Altere Version:
https://newyear2006.wordpress.com/2009/03/11/adobe-acrobat-reader-91-direkt-herunterladen/