J'utilise un outil tiers pour obtenir le contenu numérisé à partir du scanner. Au clic du bouton, il exécute le code et donne le contenu sous la forme d'un FileStream. Maintenant, je dois enregistrer ce fichier FileStream dans un fichier pdf dans un dossier spécifié.Après enregistrement, j'ai besoin d'ouvrir le fichier dans le navigateur.Alors, comment puis-je enregistrer le fichier FileStream comme un fichier pdf.Veuillez m'aider.Comment enregistrer FileSteam sous forme de fichier pdf
Répondre
Vous pouvez jeter un oeil à la C# Library PDF sur SourceForge: http://sourceforge.net/projects/pdflibrary/
pas sûr, mais peut-être vérifier
Une autre bibliothèque PDF de premier plan (que j'ai déjà utilisé dans le passé) est iTextSharp. Vous pouvez jeter un oeil à this tutorial sur la façon de convertir votre flux au format PDF ont alors l'utilisateur télécharger.
Si je vous comprends bien, la bibliothèque tierce partie est vous remettre un flux contenant les données du document numérisé et vous devez écrire dans un fichier? Si c'est le cas, vous devez rechercher les E/S de fichiers en C#. Voici un link et un exemple:
Stream sourceStream = scanner.GetOutput(); // whereever the source stream is
FileStream targetStream = File.OpenWrite(filename, FileMode.Create());
int bytesRead = 0;
byte[] buffer = new byte[2048];
while (true) {
bytesRead = sourceStream.Read(buffer, 0, buffer.length);
if (bytesRead == 0)
break;
targetStream.Write(buffer, 0, bytesRead);
}
sourceStream.Close();
targetStream.Close();
Oui c'est l'enregistrement du fichier. Lorsque je l'ouvre, il montre un message d'erreur que Adobe Reader n'a pas pu ouvrir ce fichier. – ANP
Ceci enregistre juste le flux. Mais les données réelles ne sont pas au format PDF. Vous devez utiliser une bibliothèque séparée pour _translate_ qui diffusera en PDF en utilisant des bibliothèques tierces mentionnées dans les autres réponses. –
Vous pouvez écrire le flux directement dans la mémoire tampon de sortie de la réponse.
Donc, si vous êtes au point dans votre code où vous avez la filestream du scanner. Il suffit de lire les octets du scanner filestream et les écrire au Response.OutputStream
Réglez le contentType à application/pdf
Assurez-vous de retourner rien d'autre. Le navigateur des utilisateurs fera tout ce qu'il est configuré pour faire maintenant, soit enregistrer sur le disque ou afficher dans le navigateur. Vous pouvez également enregistrer sur le disque sur le serveur à ce stade également au cas où vous vouliez une sauvegarde.
Je présume que votre flux de fichiers est déjà un pdf, sinon vous aurez besoin d'utiliser quelque chose comme iTextSharp pour créer le pdf.
Édition Voici un code approximatif pour le faire. Vous voudrez le ranger, comme ajouter un recouvrement d'exception pour vous assurer que le flux de fichier est nettoyé correctement.
public void SaveToOutput(Stream dataStream)
{
dataStream.Seek(0, SeekOrigin.Begin);
FileStream fileout = File.Create("somepath/file.pdf");
const int chunk = 512;
byte[] buffer = new byte[512];
int bytesread = dataStream.Read(buffer,0,chunk);
while (bytesread == chunk)
{
HttpContext.Current.Response.OutputStream.Write(buffer, 0, chunk);
fileout.Write(buffer, 0, chunk);
bytesread = dataStream.Read(buffer, 0, chunk);
}
HttpContext.Current.Response.OutputStream.Write(buffer, 0, bytesread);
fileout.Write(buffer, 0, bytesread);
fileout.Close();
HttpContext.Current.Response.ContentType = "application/pdf";
}
Simon
- 1. Enregistrer int [] [] du fichier RVB sous forme de fichier image
- 2. convertir les fenêtres sous forme de fichier pdf
- 3. enregistrer la sortie sous forme de fichier texte dans NetworkX
- 4. Enregistrer résultat prodeure stocké sous forme de fichier
- 5. Enregistrer le contenu UITextView sous forme de fichier doc
- 6. Enregistrer une chaîne sous la forme d'un fichier image
- 7. comment enregistrer le fichier pdf dans SQLite
- 8. Enregistrer une table sous forme de texte
- 9. enregistrer plusieurs clics sous forme de tableau
- 10. Débutant MATLAB: erreur lors de l'utilisation de "saveas" pour enregistrer un tracé sous forme de fichier pdf
- 11. Enregistrer many-to-many sous forme manuellement
- 12. Comment enregistrer des objets sous forme de fichiers XML?
- 13. PHP Fichier "Enregistrer sous ..."
- 14. GWT: Comment générer un fichier PDF enregistrer/ouvrir une fenêtre?
- 15. Fichier sous forme binaire
- 16. Que puis-je faire pour faire mon programme (enregistrer sous forme de fichier PDF comme Microsoft Excel)
- 17. Télécharger un fichier depuis enregistrer sous forme de fenêtre en utilisant Java et Javascript
- 18. Comment afficher une boîte de dialogue Enregistrer sous pour un fichier PDF généré par iText?
- 19. comment générer le fichier pdf sous forme de données mysql utf-8
- 20. Enregistrer plusieurs feuilles en .pdf
- 21. FPDFI - setSourceFile sous forme de chaîne et non de fichier
- 22. Comment enregistrer les paramètres sous forme de hachage dans un fichier externe?
- 23. Comment enregistrer la synthèse vocale sous forme de fichier avec Microsoft SAPI?
- 24. Enregistrer fichier PDF montré par PDFKit middleware
- 25. Comment enregistrer l'élément WPF sous forme d'image dans différentes tailles?
- 26. Enregistrer le fichier PDF sur le disque
- 27. Programatically enregistrer un fichier PDF dans l'iPhone
- 28. Comment: Enregistrer le formulaire d'informations sous la forme
- 29. java - produire des graphiques sous forme de PDF
- 30. servlet pdf à venir sous forme de texte en chrome
WebForms ou MVC? –
J'utilise WebForms – ANP