![]() |
PNGImage Komponente
Hallo,
ich suche für Andorra 2D eine PNG Image Komponente. Eigentlich gibt es diese hier: ![]() Das Projekt gibt es aber anscheinend nichtmehr und bei Google habe ich nur eine bei Koders Code Search gefunden: ![]() Diese ist aber leider unvollständig und die kennt nicht TPNGObject. Hat vielleicht einer diese Komponente und kan mir diese schicken? |
Re: PNGImage Komponente
Problem gerade gelöst, für nachfolgende:
![]() |
Re: PNGImage Komponente
Hallo,
hast Du oder jemand anderes zwischenzeitlich die Komponente(n) probieren können? Ich habe sie noch woanders runtergeladen, kann mich aber an den Link nicht mehr erinnern. Der von Dir angegebene scheint auch tot zu sein; jedenfalls bei mir geht er nicht mehr. Was mich ärgert, ist der Umstand, dass die dem Paket beigefügte pngdelphi.chm bei mir nicht läuft. Es kommt immer die Fehlermeldung "Die Navigation zu der Webseite wurde abgebrochen". Eventuell kann mir schon da jemand einen Tipp geben. Darin suche ich z.B. Antworten darauf, wie man die Dateien erheblich kleiner machen kann. Ich habe bereits mal ![]() Ich scanne mit DelphiTwain ein Bild (vornehmlich Text) in ein TImage ein. Entsprechend der Empfehlung in obigem Link habe ich versucht, das Bitmap gleich in TImage mittels TImage.Picture.Bitmap.PixelFormat:=pf8bit auf Schwarzweiß zu setzen. Das klappt aber schon nicht und ein einfacher Text (DIN A4) ist letztlich inakzeptable 2,7 MB groß... Kennt sich allgemein mit PNG jemand aus? Gruß, Alex |
Re: PNGImage Komponente
Vielleicht hilft dir das
![]() |
Re: PNGImage Komponente
Zitat:
Zitat:
|
Re: PNGImage Komponente
Der Schlüssel dazu heißt HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp\1.x \ItssRestrictions (ggf. anlegen). Hier nun einen DWORD-Wert "MaxAllowedZone" anlegen mit dem Wert 2. Sollte dann wieder gehen.
|
Re: PNGImage Komponente
|
Re: PNGImage Komponente
Danke für Eure Antworten. Das hat mir extrem weitergeholfen!
Bezüglich der chm-Datei war es scheinbar wirklich so, dass es am Netz bzw. dem Runterladen lag. Ich hatte die zip mit XP-Mitteln entpackt und der merkte sich trotz lokalem Speichern, dass die Datei nicht vom Rechner war. Ich habe dann einfach die Datei mit dem uralt Norton Commander woanders hin und wieder zurück kopiert. Dann ging es. Hinsichlich der immensen Dateigröße lag es am Scanner. Ich habe meine Experimente mit einem Agfa SnapScan e26 (mind. 8 Jahre alt) gefahren. Offenbar ist da die Bildqualität so mies, dass die Bilder trotz gleicher Auflösung dpi-Zahl so riesig werden. Habe jetzt zu Vergleichszwecken den Dokumenten-Scanner im Büro genommen und - oh Wunder - die von mir bzw. TPNGObject gepackten Bilder waren bei gleicher Auflösung etc. sogar kleiner als mit der hochoptimierten Kompression meines Grafikprogramms. Das reicht mir völlig zu. Muss ich also doch nicht auf Delphi2009 warten (Wäre mir auch zu teuer für dieses eine Programm gewesen. Den Rest kann ich noch mit Delphi 6 erledigen.). Jetzt muss ich es nur noch schaffen, die Twain-Schnittstelle so unter Kontrolle zu bekommen, dass ich mehrere Seiten gleichzeitig Scannen kann. Momentan wird mit dem Modul DelphiTwain nur die letzte Seite in mein TIMage übertragen. Da muss ich dann leider den Quellcode auseinander nehmen. Nochmals Gruß und Dank Alex |
Re: PNGImage Komponente
Wieder ich:
Ich habe Dank Euch nun die Hilfe öffnen können und als Administrator läuft das Programm auch. Aber leider nicht als ein eingeschränkter Benutzer :( Für diese soll es aber später - wenn ales fertig ist - sein. Ich schreibe das Bild mit dem Befehl PNG.SaveToFile(Pfad+'test.png'); Ich habe bereits probiert, den Pfad auf 'C:\' zu setzen, wo eigentlich jeder Schreibrechte haben sollte. Das klappt trotzdem nicht. Hat jemand eine(n) Erklärung/Lösung/Workaround. In der Hilfe der PNG-Komponente konnte ich nichts finden. Es wundert mich auch insoweit, als ich vor dem Schreiben Verzeichnisse anlegen kann. Das klappt nur mit Schreibrechten und ich speichere jetzt auch zu Testzwecken ein TextFile mit dem Dateinamen als Inhalt in dasselbe Verzeichnis wie die png-Datei ab. Das klappt, was mir unerklärlich ist. Meine einzige Idee ist die, den Inhalt von TPNGObject abzufangen und selbst von Hand byteweise abzuspeichern. Ich habe aber keine Ahnung wie das geht. Ein einfaches Zurückkopieren auf TImage tut es nicht, da ich dann die Kompression etc. wieder verliere. Ich will auch nicht allen Benutzern mit Scanner Admin-Rechte geben müssen... Es grüßt ein ziemlich ratloser Alex |
Re: PNGImage Komponente
Hast du es mal mit dem User-Pfad versucht?? Ich währe mir da nicht so sicher das auf C: jeder schreibrechte hat..
|
Re: PNGImage Komponente
Zitat:
Aber: Wie komme ich an den Userpfad ran? Ich würde es ja mal probieren, auch wenn das mein Problem nicht löst :( Der Quelltext der Komponente (natürlich nicht von mir, so schlau bin ich nicht) sieht übrigens so aus:
Delphi-Quellcode:
procedure TPngObject.SaveToFile(const Filename: String);
var FileStream: TFileStream; begin {Creates the file stream to write} FileStream := TFileStream.Create(Filename, [fsmWrite]); SaveToStream(FileStream); {Saves the data} FileStream.Free; {Free file stream} end; |
Re: PNGImage Komponente
Ein
Delphi-Quellcode:
bringt tatsächlich eine Datei auf dem Desktop zustande.
PNG.SaveToFile(ExtractFilePath(Application.ExeName)+'Seite '+
FormatFloat('000#',ZSave+Zahl)+'.png'); Ich verstehe es trotzdem nicht! Ich hatte ja bereits geschrieben, dass ich in den anderen Alternativen in dasselbe Verzeichnis eine Textdatei habe schreiben können. Da tauchten keinerlei Fehlermeldungen auf. Mein Workaround wird wohl folgerichtig sein, die Dateien nach %TEMP% zu speichern und dann zu verschieben. Aber das kann es doch nicht sein ... |
Re: PNGImage Komponente
Zitat:
|
Re: PNGImage Komponente
Zitat:
Ich habe ein ganz "stinknormales" Windows XP Pro. (OEM für Fujitsu/Siemens). |
Re: PNGImage Komponente
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo zusammen,
chm-Dateien über Netz-LW: das Ganze tritt seit einem bestimmten Sicherheitsupdate von MS auf. Im Anhang eine Doku zur Erklärung und Behebung des Problems. |
Re: PNGImage Komponente
Also das sind meine Ergebnisse:
1. Schreiben in "C:\" -> klappt nicht; scheint also doch nicht standardmäßig freigegeben zu sein. 2. Schreiben in "C:\Beliebiges Verzeichnis" -> klappt nur, wenn das Verzeichnis schon existiert. Lege ich es mit dem Programm an, kann ich es anlegen, aber nichts reinschreiben 3. Schreiben auf Netzwerkfreigabe -> klappt nicht, obwohl sämtlich Rechte vorhanden sind. Andere Programm von mir (auch Delphi), OpenOffice, Statistiksoftware etc. greifen ohne Probleme zu :gruebel: Ich versuche wirklich es zu verstehen. So richtig leuchtet es mir aber nicht ein ... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:56 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz