2009-05-08 4 views
5

Czy ktoś wie, czy można zmienić rozmiar strony/skalę raportu, gdy jest wyświetlany w formacie PDF po wyeksportowaniu?Eksportowanie pliku PDF w usługach raportowania

Problem, który mamy, polega na tym, że jeden z naszych użytkowników utworzył raport z dużą liczbą kolorów w tabeli, następnie tabela przechodzi do następnej strony raportu. Zmieniliśmy konfigurację strony na krajobraz w ramach Business Intelligence Studio, który następnie renderuje raport w orientacji w formacie PDF. Jednak zmiana ustawień strony na A3 nie rozwiązuje problemu. Czy można zmienić rozmiar/skalować w ten sposób, czy istnieje lepsza metoda, której nie znam?

Dzięki

+0

2005 lub 2008? Utknąłeś w 2005 roku, ale w 2008 roku jest znacznie więcej kontroli nad eksportem. –

Odpowiedz

2

Tak. Należy wykonać ręczny eksport i podać informacje o urządzeniu podczas renderowania.

Oto ewentualne dane DeviceInfo dla PDF render:

http://msdn.microsoft.com/en-us/library/ms154682.aspx

Teraz eksport do sposobu PDF zostanie zrobione tak:

Private Sub ReportCommandExportToPDF() 
    Dim warnings As Warning() = Nothing 
    Dim streamids As String() = Nothing 
    Dim mimeType As String = Nothing 
    Dim encoding As String = Nothing 
    Dim extension As String = Nothing 
    Dim bytes As Byte() 
    Dim deviceInf as String = Nothing 

    deviceInf = "<DeviceInfo><MarginLeft>0.2</MarginLeft></DeviceInfo>" 

    bytes = ReportViewer1.LocalReport.Render("PDF", deviceInf, mimeType, encoding, extension, streamids, warnings) 
     Dim fs As New FileStream("File.pdf", FileMode.Create) 
     fs.Write(bytes, 0, bytes.Length) 
     fs.Close() 

    End Sub