konvertieren Ich möchte pdf
Datei aus DB-Datensatz zu generieren. Codieren Sie es zu Base64
Zeichenfolge und speichern Sie es in DB. Was gut funktioniert. Jetzt möchte ich umgekehrte Aktion, Wie kann ich Base64
Zeichenfolge entschlüsseln und pdf
Datei erneut generieren?Wie Base64 Zeichenkette in PDF-Datei mit Garnelen Edelstein
hier ist, was ich bisher versucht habe.
def data_pdf_base64
begin
# Create Prawn Object
my_pdf = Prawn::Document.new
# write text to pdf
my_pdf.text("Hello Gagan, How are you?")
# Save at tmp folder as pdf file
my_pdf.render_file("#{Rails.root}/tmp/pdf/gagan.pdf")
# Read pdf file and encode to Base64
encoded_string = Base64.encode64(File.open("#{Rails.root}/tmp/pdf/gagan.pdf"){|i| i.read})
# Delete generated pdf file from tmp folder
File.delete("#{Rails.root}/tmp/pdf/gagan.pdf") if File.exist?("#{Rails.root}/tmp/pdf/gagan.pdf")
# Now converting Base64 to pdf again
pdf = Prawn::Document.new
# I have used ttf font because it was giving me below error
# Your document includes text that's not compatible with the Windows-1252 character set. If you need full UTF-8 support, use TTF fonts instead of PDF's built-in fonts.
pdf.font Rails.root.join("app/assets/fonts/fontawesome-webfont.ttf")
pdf.text Base64.decode64 encoded_string
pdf.render_file("#{Rails.root}/tmp/pdf/gagan2.pdf")
rescue => e
return render :text => "Error: #{e}"
end
end
Jetzt bin ich unten Störung zu erhalten:
Encoding ASCII-8BIT can not be transparently converted to UTF-8. Please ensure the encoding of the string you are attempting to use is set correctly
Ich habe How to convert base64 string to PNG using Prawn without saving on server in Rails versucht, aber es gibt mir eine Fehlermeldung:
"\xFF" from ASCII-8BIT to UTF-8
Kann mir jemand zeigen, was ich fehle?
@Med: ok lassen Sie mich versuchen, werden Sie bald –
@Med aktualisieren: immer diese Fehlermeldung: 'ungültige Bytefolge in UTF-8' –
Ihre Frage ist unklar. Zuerst sagen Sie, dass Sie eine PDF-Datei in der Datenbank speichern. Dann fragen Sie, wie Sie aus den Daten in der DB eine PDF-Datei erzeugen können. Aber du hast gerade gesagt, dass die Daten * eine PDF-Datei sind! Also, was ist es? –