本文整理汇总了C#中fyiReporting.RDL.Pages类的典型用法代码示例。如果您正苦于以下问题:C# Pages类的具体用法?C# Pages怎么用?C# Pages使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
Pages类属于fyiReporting.RDL命名空间,在下文中一共展示了Pages类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: RunPage
internal void RunPage(Pages pgs, Row row)
{
// Start each row in the same location
// e.g. if there are two embedded tables in cells they both start at same location
Page savepg = pgs.CurrentPage;
float savey = savepg.YOffset;
Page maxpg = savepg;
float maxy = savey;
foreach (TableCell tc in _Items)
{
tc.RunPage(pgs, row);
if (maxpg != pgs.CurrentPage)
{ // a page break
if (maxpg.PageNumber < pgs.CurrentPage.PageNumber)
{
maxpg = pgs.CurrentPage;
maxy = maxpg.YOffset;
}
}
else if (maxy > pgs.CurrentPage.YOffset)
{
// maxy = maxy; TODO what was this meant to do
}
// restore the beginning start of the row
pgs.CurrentPage = savepg;
savepg.YOffset = savey;
}
pgs.CurrentPage = maxpg;
savepg.YOffset = maxy;
return ;
}
示例2: RunPage
override internal void RunPage(Pages pgs, Row row)
{
Report r = pgs.Report;
bool bHidden = IsHidden(r, row);
SetPagePositionBegin(pgs);
PageLine pl = new PageLine();
SetPagePositionAndStyle(r, pl, row);
if (!bHidden)
pgs.CurrentPage.AddObject(pl);
SetPagePositionEnd(pgs, pl.Y);
}
示例3: RunPage
internal void RunPage(Pages pgs, Row row)
{
Page p = pgs.CurrentPage;
if (p.YOffset + HeightOfRows(pgs, row) > pgs.BottomOfPage)
{
p = OwnerTable.RunPageNew(pgs, p);
OwnerTable.RunPageHeader(pgs, row, false, null);
}
_TableRows.RunPage(pgs, row);
return;
}
示例4: RunPages
public void RunPages(Pages pgs)
{
//TODO : Why Cairo is broken when CurrentThread.CurrentCulture is set to local ?
//At Linux when CurrentCulture is set to local culture, Cairo rendering is serious broken
CultureInfo oldci = Thread.CurrentThread.CurrentCulture;
Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture;
try {
foreach (Page p in pgs) {
ProcessPage (g, p);
break;
}
} finally {
Thread.CurrentThread.CurrentCulture = oldci;
}
}
示例5: PageDrawing
public PageDrawing(Pages pgs)
{
// Set up the tooltip
_tt = new ToolTip();
_tt.Active = false;
_tt.ShowAlways = true;
_HitList = new List<HitListEntry>();
_SelectList = new List<PageItem>();
_LastZoom = 1;
_pgs = pgs;
// Get our graphics DPI
Graphics ga = null;
try
{
ga = this.CreateGraphics();
DpiX = ga.DpiX;
DpiY = ga.DpiY;
}
catch
{
DpiX = DpiY = 96;
}
finally
{
if (ga != null)
ga.Dispose();
}
// force to double buffering for smoother drawing
//this.SetStyle(ControlStyles.DoubleBuffer |
// ControlStyles.UserPaint |
// ControlStyles.AllPaintingInWmPaint,
// true);
this.DoubleBuffered = true;
}
示例6: RunPage
override internal void RunPage(Pages pgs, Row row)
{
Report r = pgs.Report;
if (IsHidden(r, row))
return;
SetPagePositionBegin(pgs);
PageLine pl = new PageLine();
SetPagePositionAndStyle(r, pl, row);
//pl.X = GetOffsetCalc(r) + LeftCalc(r);
//if (Top != null)
// pl.Y = Top.Points;
//pl.Y2 = Y2;
//pl.X2 = GetX2(pgs.Report);
//if (Style != null)
// pl.SI = Style.GetStyleInfo(r, row);
//else
// pl.SI = new StyleInfo(); // this will just default everything
pgs.CurrentPage.AddObject(pl);
SetPagePositionEnd(pgs, pl.Y);
}
示例7: RunPage
internal void RunPage(Pages pgs, Row row)
{
WorkClass wc = this.GetValue(pgs.Report);
if (wc.OutputRow == row && wc.OutputPage == pgs.CurrentPage)
return;
Page p = pgs.CurrentPage;
float height = p.YOffset + HeightOfRows(pgs, row);
if (height > pgs.BottomOfPage)
{
Table t = OwnerTable;
p = t.RunPageNew(pgs, p);
t.RunPageHeader(pgs, row, false, null);
if (this.RepeatOnNewPage)
return; // should already be on the page
}
_TableRows.RunPage(pgs, row);
wc.OutputRow = row;
wc.OutputPage = pgs.CurrentPage;
return;
}
示例8: RefreshReport
void RefreshReport()
{
SetParametersFromControls();
report.RunGetData(Parameters);
pages = report.BuildPages();
foreach (Gtk.Widget w in vboxPages.AllChildren)
{
vboxPages.Remove(w);
}
for (int pageCount = 0; pageCount < pages.Count; pageCount++)
{
ReportArea area = new ReportArea();
area.SetReport(report, pages[pageCount]);
//area.Scale
vboxPages.Add(area);
}
this.ShowAll();
SetErrorMessages (report.ErrorItems);
if (report.ErrorMaxSeverity == 0)
show_errors = false;
errorsAction.VisibleHorizontal = report.ErrorMaxSeverity > 0;
// Title = string.Format ("RDL report viewer - {0}", report.Name);
EnableActions();
CheckVisibility();
}
示例9: RunPages
// this does all the work
public void RunPages(Pages pgs)
{
foreach (Page p in pgs)
{
//Create a Page Dictionary representing a visible page
page=new PdfPage(anchor);
content=new PdfContent(anchor);
PdfPageSize pSize=new PdfPageSize((int) r.ReportDefinition.PageWidth.Points,
(int) r.ReportDefinition.PageHeight.Points);
page.CreatePage(pageTree.objectNum,pSize);
pageTree.AddPage(page.objectNum);
//Create object that presents the elements in the page
elements=new PdfElements(page, pSize);
ProcessPage(pgs, p);
// after a page
content.SetStream(elements.EndElements());
page.AddResource(fonts,content.objectNum);
page.AddResource(patterns,content.objectNum);
//get the pattern colorspace...
PatternObj po = new PatternObj(anchor);
page.AddResource(po,content.objectNum);
int size=0;
tw.Write(page.GetPageDict(filesize,out size),0,size);
filesize += size;
tw.Write(content.GetContentDict(filesize,out size),0,size);
filesize += size;
tw.Write(po.GetPatternObj(filesize, out size),0,size);
filesize += size;
}
return;
}
示例10: SetPagePositionEnd
internal void SetPagePositionEnd(Pages pgs, float pos)
{
if (_TC != null || _InMatrix) // don't mess with page if part of a table or in a matrix
return;
WorkClass wc = GetWC(pgs.Report);
wc.CurrentPage = pgs.CurrentPage;
wc.BottomPosition = pos;
}
示例11: RunPageNew
internal Page RunPageNew(Pages pgs, Page p)
{
if (p.IsEmpty()) // if the page is empty it won't help to create another one
return p;
// Do we need a new page or have should we fill out more body columns
Body b = OwnerReport.Body;
int ccol = b.IncrCurrentColumn(pgs.Report); // bump to next column
float top = OwnerReport.TopOfPage; // calc top of page
if (ccol < b.Columns)
{ // Stay on same page but move to new column
p.XOffset =
((OwnerReport.Width.Points + b.ColumnSpacing.Points) * ccol);
p.YOffset = top;
p.SetEmpty(); // consider this page empty
}
else
{ // Go to new page
b.SetCurrentColumn(pgs.Report, 0);
pgs.NextOrNew();
p = pgs.CurrentPage;
p.YOffset = top;
p.XOffset = 0;
}
return p;
}
示例12: RunPages
// we don't have paging turned on for xml
public void RunPages(Pages pgs)
{
return;
}
示例13: RunPageRegionEnd
internal void RunPageRegionEnd(Pages pgs)
{
if (this.TC == null && this.PageBreakAtEnd && !pgs.CurrentPage.IsEmpty())
{ // force page break at beginning of dataregion
pgs.NextOrNew();
pgs.CurrentPage.YOffset = OwnerReport.TopOfPage;
}
}
示例14: RunPage
override internal void RunPage(Pages pgs, Row row)
{
Report r = pgs.Report;
bool bHidden = IsHidden(r, row);
WorkClass wc = GetWC(r);
string mtype=null;
Stream strm=null;
System.Drawing.Image im=null;
SetPagePositionBegin(pgs);
if (bHidden)
{
PageImage pi = new PageImage(ImageFormat.Jpeg, null, 0, 0);
this.SetPagePositionAndStyle(r, pi, row);
SetPagePositionEnd(pgs, pi.Y + pi.H);
return;
}
if (wc.PgImage != null)
{ // have we already generated this one
// reuse most of the work; only position will likely change
PageImage pi = new PageImage(wc.PgImage.ImgFormat, wc.PgImage.ImageData, wc.PgImage.SamplesW, wc.PgImage.SamplesH);
pi.Name = wc.PgImage.Name; // this is name it will be shared under
pi.Sizing = this._Sizing;
this.SetPagePositionAndStyle(r, pi, row);
pgs.CurrentPage.AddObject(pi);
SetPagePositionEnd(pgs, pi.Y + pi.H);
return;
}
try
{
strm = GetImageStream(r, row, out mtype);
if (strm == null)
{
r.rl.LogError(4, string.Format("Unable to load image {0}.", this.Name.Nm));
return;
}
im = System.Drawing.Image.FromStream(strm);
int height = im.Height;
int width = im.Width;
MemoryStream ostrm = new MemoryStream();
strm.Position = 0;
ImageFormat imf;
switch(mtype.ToLower())
{
case "image/jpeg" :
imf = ImageFormat.Jpeg;
CopyStream(strm, ostrm);
break;
case "image/png":
imf = ImageFormat.Png;
CopyStream(strm, ostrm);
break;
default: // from old code where all images convert to jpeg, i don't know why. May be need delete it and add all support formats.
imf = ImageFormat.Jpeg;
System.Drawing.Imaging.ImageCodecInfo[] info;
info = ImageCodecInfo.GetImageEncoders();
EncoderParameters encoderParameters;
encoderParameters = new EncoderParameters(1);
encoderParameters.Param[0] = new EncoderParameter(Encoder.Quality, ImageQualityManager.EmbeddedImageQuality);
System.Drawing.Imaging.ImageCodecInfo codec = null;
for (int i = 0; i < info.Length; i++)
{
if (info[i].FormatDescription == "JPEG")
{
codec = info[i];
break;
}
}
im.Save(ostrm, codec, encoderParameters);
break;
}
byte[] ba = ostrm.ToArray();
ostrm.Close();
PageImage pi = new PageImage(imf, ba, width, height);
pi.Sizing = this._Sizing;
this.SetPagePositionAndStyle(r, pi, row);
pgs.CurrentPage.AddObject(pi);
if (_ConstantImage)
{
wc.PgImage = pi;
// create unique name; PDF generation uses this to optimize the saving of the image only once
pi.Name = "pi" + Interlocked.Increment(ref Parser.Counter).ToString(); // create unique name
}
SetPagePositionEnd(pgs, pi.Y + pi.H);
}
catch (Exception e)
{
// image failed to load, continue processing
r.rl.LogError(4, "Image load failed. " + e.Message);
}
finally
{
if (strm != null)
strm.Close();
//.........这里部分代码省略.........
示例15: RunPages
// we don't have paging turned on for html
public void RunPages(Pages pgs)
{
}