cd.robertosblogs.net
Information

Imprimer en mode paysage avec javascript

Imprimer en mode paysage avec javascript


We are searching data for your request:

Forums and discussions:
Manuals and reference books:
Data from registers:
Wait the end of the search in all databases.
Upon completion, a link will appear to access the found materials.


Imprimer en mode paysage avec javascript (uniquement Chrome)

Bonjour, j'ai une page Web qui est imprimée à l'aide d'une extension Chrome. Lorsque la boîte de dialogue d'impression est invoquée, la page fait automatiquement pivoter l'aperçu avant impression en paysage. Ce n'est pas un problème lors de l'impression d'une page Web qui a été ouverte en mode paysage, mais lorsque la page est ouverte en mode portrait et que je l'imprime, l'image revient en mode portrait, ce qui n'est pas ce que je veux.

Voici un lien vers un exemple de site où le problème est démontré. La capture d'écran ci-dessous montre ce qui se passe lorsque j'appuie sur imprimer.

Voici une image de ce que je vois lorsque j'imprime la page depuis Firefox :

J'ai essayé de faire pivoter l'image dans la page en utilisant javascript, mais cela ne fonctionnera pas lors de l'impression. J'ai également essayé de faire pivoter l'image pour l'imprimer à l'aide du service Google PDF, mais le service ne fera pivoter l'image que si elle a été convertie en PDF.

Voici donc la question : Comment imprimer une image orientée en mode portrait pour l'imprimer en paysage, et cela uniquement sur Chrome ? Je sais que le problème vient du fait que l'image est orientée en mode portrait, mais je ne sais pas comment le résoudre.

UNE:

Après un peu plus de recherche, j'ai trouvé un problème similaire sur Stackoverflow. Si je me souviens bien, une personne utilisant le service Chrome PDF pourrait modifier l'orientation de la page imprimée à l'aide de l'API, puis recréer le PDF pour conserver l'orientation.

UNE:

Je sais que c'est une très vieille question, mais j'ai eu le même problème et cette réponse a parfaitement fonctionné pour moi. C'est ici:

Ouvrez Chrome avec un profil sur lequel le service PDF est activé. Cela signifie que vous pouvez activer le service dans chrome://flags/#pdf-service

Ouvrez le fichier que vous souhaitez imprimer et ouvrez Fichier >, Imprimer au format PDF

Lors de l'impression du PDF, sélectionnez enregistrer le travail d'impression au format PDF et cela ouvrira une fenêtre pour enregistrer le PDF. Dans cette fenêtre, accédez à la liste déroulante d'orientation (devrait être de droite à gauche ou de gauche à droite) et changez-la en "tourner en portrait".

Cela recréera le PDF dans l'orientation souhaitée. Vous pouvez toujours revenir en arrière et le remettre en mode paysage.

UNE:

Vous devez changer l'orientation de votre fichier avant de l'imprimer.

Ouvrez le fichier avec le navigateur de fichiers et sélectionnez Fichier >, Imprimer.

Sélectionnez Enregistrer le travail d'impression au format PDF, puis sélectionnez Modifier l'orientation par défaut.

Si vous devez créer le PDF dans l'orientation souhaitée, vous pouvez ensuite cliquer sur le bouton Télécharger le PDF. Si vous devez imprimer plusieurs fois à partir d'un fichier PDF que vous avez créé avec Adobe, vous pouvez facilement configurer une action d'impression qui changera automatiquement l'orientation à chaque fois.

Mise à jour : je pensais que vous vouliez dire que vous vouliez enregistrer l'orientation dans l'impression et que le serveur d'impression ne recrée pas le PDF sur la machine locale. Si vous recherchez cela, sélectionnez simplement PDF >, Enregistrer en tant que type >, Pdf et définissez l'orientation ici.

Mise à jour : si les autres solutions ne fonctionnent pas, vous pouvez ajouter le code suivant dans votre web.config :

<,system.webServer>,

<,paramètrespdf>,

<,dpi>,200<,/dpi>,

<,marge>,0.5in 0.25in 0.5in 0.25in<,/marge>,

<,/pdfParamètres>,

<,/system.webServer>,

Cela donnerait 200 dpi et une marge de 4", ce que le serveur d'impression semble utiliser par défaut.

UNE:

Vous pouvez définir un ensemble de propriétés d'imprimante comme l'orientation de la page, etc. Cela sera appliqué au fichier PDF lors de son impression.

Les propriétés du PDFCreator (je suppose que c'est ce que vous avez utilisé pour créer votre PDF) se trouvent dans le PrintJob :

Service d'impression service d'impression =

PrintServiceLookup.GetPrintService(System.Net.NetworkInformation.NetworkContext.DefaultPrintTicket.PrintServiceGUID),

état booléen =

PrintService.ValidatePrintJob(printJob),

si (état)

{

PrintQueue printQueue = printService.GetPrintQueue(PrintQueueLookup.DefaultPrintQueue),

foreach (PrinterSettings ps dans printQueue.Printers)

{

// Ceci est un exemple de ce qu'il faut faire avec les propriétés

chaîne[] pageOrientationPropertyNames = {"PageOrientation"},

si (ps.Properties.ContainsKey("PageOrientation"))

{

commutateur (ps.Properties["PageOrientation"])

{

étui "Paysage"

:

ps.Propriétés["Paysage"] = vrai,

Pause,

étui "Portrait"

:

ps.Properties["Portrait"] = vrai,

Pause,

cas "PaysageGauche"



Commentaires:

  1. Nagor

    étrange pour certains produits de communication ..

  2. Medus

    Je considère que vous vous trompez. Je peux défendre la position.

  3. Kendel

    Prêt à débattre sur le sujet ?

  4. Barday

    attrapez le plus!

  5. Monos

    Vous admettez l'erreur. Je propose d'examiner.

  6. Vutilar

    Je pense qu'il manque.



Écrire un message