Generazione di etichette con numeri progressivi

martedì 16 marzo 2021 - 17.09

albepisti Profilo | Newbie

Ciao, vorrei creare un programmino per la stampa di etichette con numero progressivo, qui di seguito il codice.
Però sono mesi che sbatto la testa nel tentativo di incrementare ad ogni pagina il numero "startpage" senza mai riuscirci...
in pratica in una windows form chiedo all'utente la pagina di partenza e quante etichette stampare: ad esempio pagina di partenza 10; nr. 4 etichette da stampare e mi genererà 4 etichette con numeri 10,11,12,13

potreste essermi di aiuto?

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Drawing.Printing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace StampaEtichetteBancali
{
public partial class Form1 : Form
{
int startPage = 0;
int pageCount = 0;
int pageLimit = 0;

public Form1()
{
InitializeComponent();
}

private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{


{ // Create a font myFont
Font myfont = new Font("Arial", 75, FontStyle.Bold, GraphicsUnit.Point);
Font myfont2 = new Font("Arial", 10, FontStyle.Bold, GraphicsUnit.Point);

Rectangle rect1 = new Rectangle(5, 5, 340, 207);

// text centered on the page.
StringFormat stringFormat = new StringFormat();
stringFormat.Alignment = StringAlignment.Center;
stringFormat.LineAlignment = StringAlignment.Center;


if (startPage < pageLimit)
{

e.Graphics.DrawString(startPage + "/" + txt_departmnt.Text, myfont, Brushes.Black, rect1, stringFormat);


{
Rectangle rect2 = new Rectangle(5, 5, 340, 207);
e.Graphics.DrawRectangle(Pens.Black, Rectangle.Round(rect2));

}

startPage++;

}

}
}


private void btn_stampa_Click(object sender, EventArgs e)
{

if (Int32.TryParse(txt_startnr.Text, out startPage) &&
Int32.TryParse(txt_qty.Text, out pageCount))

{
pageLimit = startPage + pageCount;

int copie = Convert.ToInt16(txt_qty.Text);

//Set the number of copies of the document
printDocument1.PrinterSettings.Copies = (short)copie;
printDocument1.PrinterSettings.PrinterName = "Microsoft Print to PDF";
printDocument1.Print();
}
else { }
}
}
}


Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5