0
Изображение имеет ширину 200 пикселей, а pictureBox - 400 пикселей.Как я могу повторить изображение в pictureBox
Какое свойство pictureBox следует установить для отображения изображения repeat-x?
Изображение имеет ширину 200 пикселей, а pictureBox - 400 пикселей.Как я могу повторить изображение в pictureBox
Какое свойство pictureBox следует установить для отображения изображения repeat-x?
Я не думаю, что есть какое-либо свойство, которое делает отображение изображения x раз неоднократно горизонтально. Но немного пользовательский код может помочь, вот мой код:
public static class PictureBoxExtension
{
public static void SetImage(this PictureBox pic, Image image, int repeatX)
{
Bitmap bm = new Bitmap(image.Width * repeatX, image.Height);
Graphics gp = Graphics.FromImage(bm);
for (int x = 0; x <= bm.Width - image.Width; x += image.Width)
{
gp.DrawImage(image, new Point(x, 0));
}
pic.Image = bm;
}
}
//Now you can use the extension method SetImage to make the PictureBox display the image x-repeatedly
myPictureBox.SetImage(myImage, 3);//repeat 3 images horizontally.
Вы можете настроить код, чтобы сделать его повторить вертикально или выглядеть проверочной доски.
Надеюсь, это поможет!
Что не так с по умолчанию «BackgroundImageLayout = ImageLayout.Tile;» Пожалуйста, уточните, что именно вы пытаетесь выполнить. Вы хотите уменьшить изображение и повторить его несколько раз в «PictureBox»? – CodeCamper
@CodeCamper да, я хочу повторить изображение несколько раз в окне изображения, но не нужно сжимать или масштабировать его. – Ice
@ Так что, когда вы используете 'ImageLayout.Tile'? Сжимает ли он и искажает изображение? –