سلام دوستان
می خوام توی پروژه خودم با WPF یک منطقه خاص از یک تصویر رو زوم (بزرگنمایی) کنم. برای نمایش تصویر از یک کنترل Image استفاده کردم. برای اینکه بهتر بتونم منظور خودمو بیان کنم تصویر زیر رو مشاهده بفرمایید
فرض کنید ابعاد تصویر بالا 600 در 400 باشه. حالا من میخوام اون مستطیل قرمز رنگ رو که داخل این تصویر هست بزرگنمایی کنم. برای این کار من از ScaleTransform استفاده می کنم و ضریب مقیاس رو 10 حساب کردم و RenderTransformOrigin رو 0.75 و 0.85 حساب کردم.
تصویر زیر به من نمایش داده شده
کدهای xaml که برای این کار نوشتم هم به صورت زیر هست
<Grid>
<Button Width="600" Height="400">
<Button.Template>
<ControlTemplate>
<Grid ClipToBounds="True">
<Image Source="c:\temp\sample.bmp" Stretch="Uniform" RenderTransformOrigin="0.75, 0.85">
<Image.RenderTransform>
<ScaleTransform ScaleX="10" ScaleY="10" />
</Image.RenderTransform>
</Image>
</Grid>
</ControlTemplate>
</Button.Template>
</Button>
</Grid>
حالا مشکل این جاست که وقتی من بزرگنمایی میکنم دقیقا اون مستطیل قرمر به من نمایش داده نمیشه و اطراف اون هم نمایش داده میشه. در واقع بخشی از تصویری که نیاز به بزرگنمایی داره از نمایش داده نمیشه
ممنون میشم راهنمایی بفرمایید چجوری دقیقا بخش مورد نیاز رو بزرگنمایی کنم
میتونید از دستور CroppedBitmap برای این کار استفاده کنید
<Image>
<Image.Source>
<CroppedBitmap Source="c:\temp\sample.bmp" SourceRect="420,330,60,40"/>
</Image.Source>
</Image>
همچنین برای بزرگنمایی بخش خاصی از یک تصویر در WPF میتونید از یک ImageBrush و یک ViewBox هم استفاده کنید. برای این منظور از دستور زیر میتونید استفاده بفرمایید
<Grid>
<Grid.Background>
<ImageBrush ImageSource="c:\temp\sample.bmp"
ViewboxUnits="Absolute" Viewbox="420,330,60,40"/>
</Grid.Background>
</Grid>
تاریخ :
1402/09/08
- ساعت :
07:34:00 PM
- بازدید :
1161
- پاسخ :
1
|
تاریخ :
1402/09/21
- ساعت :
11:10:00 PM
- بازدید :
599
- پاسخ :
1
|
تاریخ :
1403/07/13
- ساعت :
12:06:00 PM
- بازدید :
350
- پاسخ :
1
|
تاریخ :
1403/06/24
- ساعت :
08:52:00 PM
- بازدید :
319
- پاسخ :
1
|
تاریخ :
1398/09/14
- ساعت :
01:58:00 PM
- بازدید :
4271
- پاسخ :
1
|
تاریخ :
1398/09/16
- ساعت :
11:41:00 AM
- بازدید :
4284
- پاسخ :
1
|
تاریخ :
1398/09/07
- ساعت :
02:15:00 PM
- بازدید :
3877
- پاسخ :
5
|
تاریخ :
1403/05/16
- ساعت :
05:43:00 AM
- بازدید :
662
- پاسخ :
0
|
تاریخ :
1398/09/05
- ساعت :
06:04:00 PM
- بازدید :
3174
- پاسخ :
2
|
تاریخ :
1398/09/08
- ساعت :
11:38:00 PM
- بازدید :
3251
- پاسخ :
1
|
تاریخ :
1401/02/24
- ساعت :
02:17:00 PM
- بازدید :
2013
- پاسخ :
1
|
تاریخ :
1403/08/29
- ساعت :
07:15:00 PM
- بازدید :
80
- پاسخ :
0
|
تاریخ :
1403/08/18
- ساعت :
10:40:00 AM
- بازدید :
115
- پاسخ :
0
|
تاریخ :
1402/07/23
- ساعت :
04:01:00 PM
- بازدید :
1034
- پاسخ :
1
|
تاریخ :
1403/05/30
- ساعت :
09:22:00 AM
- بازدید :
433
- پاسخ :
1
|
تاریخ :
1402/08/01
- ساعت :
06:25:00 PM
- بازدید :
931
- پاسخ :
1
|
تاریخ :
1402/08/16
- ساعت :
10:38:00 AM
- بازدید :
1357
- پاسخ :
1
|
تاریخ :
1398/08/17
- ساعت :
01:27:00 AM
- بازدید :
4801
- پاسخ :
1
|
تاریخ :
1402/09/08
- ساعت :
07:34:00 PM
- بازدید :
1161
- پاسخ :
1
|
تاریخ :
1402/09/21
- ساعت :
11:10:00 PM
- بازدید :
599
- پاسخ :
1
|