Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    45

    [VB.NET] - unità di misura per stampa/salto pagina

    ciao a tutti, ho 2 problemi da affrontare

    1) stampo una richtextbox con la procedura canonica di stampa file di testo su più pagine funziona perfettamente solo che :
    - su xp sono costretto da programma a mettere 39 sul margine destro,sinistro,inferiore, superiore (dovrebbero essere centesimi di pollice)
    - su vista per ottenere lo stesso risultato sono costretto a mettere 10 sui quattro campi (dovrebbero essere centimetri) e mi funziona.
    Evidentemente tra xp e vista c'è un default diverso, ma non riesco a trovarlo. Come potrei fare per standardizzare per avere una unica unità di misura, mi andrebbe benissimo il valore 39 anche su vista, ma dovrei dirgli che sono centesimi di pollice.
    Non riesco a trovare il parametro da valorizzare. Se era Vb6 avrei detto printer.scalemode ma su vb.net qual 'è ?????

    2) Ho un file di testo formato da più pagine, ma non hanno tutte lo stesso numero di righe per pagina (c'è la pagina con poche righe di detttaglio, la pagina con le righe con i totali in più), riesco a riconoscere l'inizio di ogni pagina perchè ho messo un "1" a colonna 1 (...il vecchissimo salto a canale, perchè mi serve per trasportarlo facilmente sul mainframe IBM).
    Per poter fare anche un stampa in locale ho risolto in maniera artigianale con un vettore pari al numero di righe max per ogni pagina che scarico sulla richtextbox dopo una routine di formattazione che mi rende ogni pagina pari al numero max di righe aggiungendo, dove serve,delle inutili righe di blanks, ma mi rifiuto di credere che non posso comandare un salto pagina a prescindere dal numero di righe.....

    Grazie a chi mi da qualche dritta .....ciao a tutti

  2. #2
    Beh, per quanto riguarda il problema dei margini, prova a controllare e impostare sull'evento
    OnPrint l'oggetto Graphics ( e.graphics) a proprietà PageUnit.
    Qui puoi impostare l'unità di misura dei valori passati alle procedure di disegno
    sull oggetto graphics( x e y di drawstring per esempio...)
    Nn so se questo l'hai gia impostato; se no prova cn quello...
    Oppure prova a impostare i margini manualmente prima della stampa sull oggetto
    PrintDocument...
    Nulla è impossibile

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.