PDA

View Full Version : عمودی نوشتن در اکتیو ریپورت



maryamb
شنبه 25 خرداد 1387, 16:14 عصر
دوستان ببخشند که من به این اکتیو ریپورت اینقدر گیر دادم !!!
چطوری می تونم یه نوشته ی عمودی کنار گزارشم داشته باشم ؟
یا اینکه ، من یه نوشته عمودی تو یه برناکمه دیگه نوشتم حالا می خوام اونو بصورت عکس مثل یه نوشته ی عمودی تو اکتیو ریپورت و در کنار سمت چپش بذارم ، باید کجا قرارش بدم ؟ اگه تو detail بذارم که اندازه ی detail رو به هم می زنه ؟چون خاصیت height فیلدهام 350 هست ولی عکسم 4 برابر اونه ؟؟

ASKaffash
شنبه 25 خرداد 1387, 17:45 عصر
سلام
با کدی شبیه به این :


Private Sub Detail_Format()
Dim Str As String
Str = "Rotate Text"
With Me.Canvas
.TextAngle = 900
.Font.Size = 30
Call .DrawText(Str, 1000, 1000, 2000, 5000)
End With
End Sub

maryamb
شنبه 25 خرداد 1387, 17:50 عصر
ببخشید این کد متن مورد نظر رو 2 بار مینویسه باید چیکار کنم؟
همچنین می خوام کمی پایین تر نوشته بشه ، با این کد می ره بالای گزارشم سمت چپ عمودی می نویسه ، کدوم قسمت رو باید تغییر بدم ؟
ضمنا می شه در مورد اون چند تا دستور یا تابعی که نوشتید توضیح بدید که چیکار می کنن؟

ASKaffash
شنبه 25 خرداد 1387, 18:13 عصر
با سلام

اعداد 1000, 1000, 2000, 5000 پارامترهای مختصات وابعاد رشته ترسیم هستند ومیتوانید با تغییر آنها مختصات نمایش متن را تغییر دهید (البته تابع میزان فونت نیزاست)

maryamb
شنبه 25 خرداد 1387, 19:14 عصر
لطفا یه راه چاره ای هم بگید تا متن رو یکبار بنویسه ، این کد متن رو دو بار موازی هم می نویسه !!!
(خب خودم یه راهی پیدا کردم ، ممنون

ASKaffash
شنبه 25 خرداد 1387, 19:24 عصر
با سلام
ولی روی کامپیوتر من درست است.

ASKaffash
شنبه 25 خرداد 1387, 19:26 عصر
با سلام
درضمن جای Event را هم عوض کنید شاید درست شود مثلا :


Private Sub PageHeader_BeforePrint()
Dim Str As String
Str = "Rotate Text"
With Me.Canvas
.TextAngle = 900
.Font.Size = 30
Call .DrawText(Str, 1000, Me.Height - 1000, 2000, 5000)
End With
End Sub