Impression sur du papier en rouleau
Je suis à l'aide de C# avec les Winforms. Je suis en train d'imprimer les factures sur un rouleau de papier. La largeur du papier est de 3 pouces, mais la longueur du papier est dynamique (c'est un rouleau de papier). La longueur dépend de la façon dont de nombreux éléments sont là dans la liste. E. g. lors d'un achat si il y a 100 articles vendus alors ça va être assez long rouleau tandis que pour un seul article acheté, il serait de petite longueur.
Lorsque j'imprime le rapport, après la fin du travail, l'imprimante éjecte la dernière page de plus que j'ai besoin. Il éjection du papier aussi longtemps que la taille A4. Je veux imprimer les lignes requises, puis arrêter l'impression.
J'utilise un rouleau de papier A4 ou A3 et un Epson LQ-300 + II de l'imprimante.
Pour être plus précis, l'impression se fait toujours à la page de la taille des unités. Si j'ai mis la page à 3 pouces x 8 pouces, puis je finis toujours avec une impression qui est un multiple de 8 pouces de long. Si j'ai un 9 pouces projet de loi pour l'impression, je me retrouve avec un 16 pouces impression de gaspiller 7 de papier. Comment puis-je imprimer avec la dernière page seulement aussi longtemps que nécessaire?
Voici le code:
private void printDoc_PrintPage(Object sender, PrintPageEventArgs e)
{
Font printFont = new Font("Courier New", 12);
int y = 15;
e.Graphics.DrawString("a Line", printFont, Brushes.Black, 0, y); y = y + 20;
e.Graphics.DrawString(" Line", printFont, Brushes.Black, 0, y); y = y + 25;
e.Graphics.DrawString(" Line", printFont, Brushes.Black, 0, y); y = y + 35;
e.Graphics.DrawString(" Line", printFont, Brushes.Black, 0, y); y = y + 45;
}
- Quelle est votre question? Vous devez simplement être en mesure de continuer à imprimer jusqu'à ce que vous avez terminé. Ensuite, vous aurez fini. C'est l'avantage du rouleau de papier.
- +1, il faut garder le dessin jusqu'à ce que vous êtes en fait et en finir avec une déclaration de couper le papier. J'ai utilisé pour ce faire l'utilisation de GDI, pas d'expérience avec Crystal reports
Vous devez vous connecter pour publier un commentaire.
Avez-vous essayé d'utiliser une page qui n'est "on line" de long?
Omettre la partie supérieure et inférieure de la bordure, et vous pouvez imprimer non stop.
Maintenant, ajoutez un peu (Alors que la page peut être arraché) et d'éjection qui.
Essayez ceci:
Voir:
http://msdn.microsoft.com/en-us/library/system.drawing.printing.pagesettings.papersize.aspx
Vous pouvez également ajuster la taille de papier à la volée. Moins de travail pour faire une ligne par page, mais j'imagine que ce serait de produire un meilleur aperçu avant impression si quelqu'un devait être amenée à le faire:
Ici est de savoir comment vous pouvez définir un format de papier personnalisé et à utiliser dans votre rapport.
Ouvrir le dossier d'imprimante (à partir du Panneau de Contrôle).
Ouvrir Propriétés du Serveur à partir du menu fichier. Il sera ouvert Imprimante et les Propriétés du Serveur boîte de Dialogue.
Sélectionnez Vérifier Créer un nouveau Formulaire
Spécifier la largeur de la page en hauteur. Je vous suggère de faire votre hauteur de 3 pouces.
Maintenant, cliquez sur le Enregistrer le Formulaire bouton.
Votre page personnalisée est prête.
ensemble de ce document par défaut est le format de papier à la fois dans le rapport ainsi que dans les propriétés de l'imprimante.
Maintenant, vous êtes bon pour aller.
Vous pouvez également utiliser l'aperçu avant impression l'option pour terminer le processus.