Ghi chú phát hành
Học
Lớp công cụ
EditableImage
Không Thể Tạo

*Nội dung này được dịch bằng AI (Beta) và có thể có lỗi. Để xem trang này bằng tiếng Anh, hãy nhấp vào đây.


Tóm Tắt
Thuộc Tính
Phương Pháp
Destroy():()
DrawCircle(center: Vector2,radius: number,color: Color3,transparency: number,combineType: Enum.ImageCombineType,antiAliasing: Enum.AntiAliasing):()
DrawImage(position: Vector2,image: EditableImage,combineType: Enum.ImageCombineType):()
DrawImageProjected(mesh: EditableMesh,projection: Dictionary,brushConfig: Dictionary):()
DrawImageTransformed(position: Vector2,scale: Vector2,rotation: number,image: EditableImage,options: Dictionary?):()
DrawLine(p1: Vector2,p2: Vector2,color: Color3,transparency: number,combineType: Enum.ImageCombineType,antiAliasing: Enum.AntiAliasing):()
DrawRectangle(position: Vector2,size: Vector2,color: Color3,transparency: number,combineType: Enum.ImageCombineType):()
WritePixelsBuffer(position: Vector2,size: Vector2,buffer: buffer):()
Thành viên kế thừa

Tài Liệu Tham Khảo API
Thuộc Tính
Size
Chỉ Đọc
Không Sao Chép
Đọc Song Song
Các khả năng: DynamicGeneration
EditableImage.Size:Vector2

Phương Pháp
Destroy
Các khả năng: DynamicGeneration
EditableImage:Destroy():()
Lợi Nhuận
()

DrawCircle
Các khả năng: DynamicGeneration
EditableImage:DrawCircle(
center:Vector2, radius:number, color:Color3, transparency:number, combineType:Enum.ImageCombineType, antiAliasing:Enum.AntiAliasing
):()
Tham Số
center:Vector2
radius:number
color:Color3
transparency:number
antiAliasing:Enum.AntiAliasing
Giá Trị Mặc Định: "Enabled"
Lợi Nhuận
()

DrawImage
Các khả năng: DynamicGeneration
EditableImage:DrawImage(
position:Vector2, image:EditableImage, combineType:Enum.ImageCombineType
):()
Tham Số
position:Vector2
Lợi Nhuận
()

DrawImageProjected
Các khả năng: DynamicGeneration
EditableImage:DrawImageProjected(
mesh:EditableMesh, projection:Dictionary, brushConfig:Dictionary
):()
Tham Số
projection:Dictionary
brushConfig:Dictionary
Lợi Nhuận
()

DrawImageTransformed
Các khả năng: DynamicGeneration
EditableImage:DrawImageTransformed(
position:Vector2, scale:Vector2, rotation:number, image:EditableImage, options:Dictionary?
):()
Tham Số
position:Vector2
scale:Vector2
rotation:number
options:Dictionary?
Lợi Nhuận
()
Mẫu mã
EditableImage:DrawImageTransformed()
local AssetService = game:GetService("AssetService")
-- Ví dụ về việc vẽ một hình ảnh được xoay và thay đổi kích thước lên một EditableImage khác
local srcImage = AssetService:CreateEditableImage({ Size = Vector2.new(256, 256) })
local dstImage = AssetService:CreateEditableImage({ Size = Vector2.new(512, 512) })
-- Vẽ với góc xoay 45 độ, thay đổi kích thước 2x và đặt tại (100, 100)
dstImage:DrawImageTransformed(
Vector2.new(100, 100), -- Vị trí
Vector2.new(2, 2), -- Tỷ lệ
45, -- Góc xoay (độ)
srcImage, -- Hình ảnh nguồn
{
CombineType = Enum.ImageCombineType.AlphaBlend, -- Tùy chọn, mặc định là AlphaBlend
SamplingMode = Enum.ResamplerMode.Default, -- Tùy chọn, mặc định là Default
PivotPoint = srcImage.Size / 2, -- Tùy chọn, mặc định là trung tâm của hình ảnh nguồn
}
)
EditableImage:DrawImageTransformed() - Cắt
local AssetService = game:GetService("AssetService")
-- Hình ảnh nguồn
local srcImage = AssetService:CreateEditableImageAsync(Content.fromUri(assetUri))
-- Khu vực cắt được định nghĩa bởi độ lệch và kích thước
local cropOffset = Vector2.new(50, 50)
local cropSize = Vector2.new(100, 100)
-- Hình ảnh đích với kích thước của khu vực cắt
local dstImage = AssetService:CreateEditableImage({ Size = cropSize })
-- Vị trí (góc trên cùng bên trái)
local position = Vector2.new(0, 0)
-- Hệ số tỷ lệ (không thay đổi tỷ lệ)
local scale = Vector2.new(1, 1)
-- Góc quay (không quay)
local rotation = 0
-- Vẽ hình ảnh nguồn lên hình ảnh đích với việc điều chỉnh điểm pivot để cắt hình ảnh
dstImage:DrawImageTransformed(position, scale, rotation, srcImage, {
CombineType = Enum.ImageCombineType.Overwrite,
PivotPoint = cropOffset, -- Đặt điểm pivot thành cropOffset để bắt đầu vẽ từ đó
})

DrawLine
Các khả năng: DynamicGeneration
EditableImage:DrawLine(
p1:Vector2, p2:Vector2, color:Color3, transparency:number, combineType:Enum.ImageCombineType, antiAliasing:Enum.AntiAliasing
):()
Tham Số
color:Color3
transparency:number
antiAliasing:Enum.AntiAliasing
Giá Trị Mặc Định: "Enabled"
Lợi Nhuận
()

DrawRectangle
Các khả năng: DynamicGeneration
EditableImage:DrawRectangle(
position:Vector2, size:Vector2, color:Color3, transparency:number, combineType:Enum.ImageCombineType
):()
Tham Số
position:Vector2
size:Vector2
color:Color3
transparency:number
Lợi Nhuận
()

ReadPixelsBuffer
Ghi Song Song
Các khả năng: DynamicGeneration
EditableImage:ReadPixelsBuffer(
position:Vector2, size:Vector2
Tham Số
position:Vector2
size:Vector2
Lợi Nhuận
Mẫu mã
EditableImage:ReadPixelsBuffer()
local AssetService = game:GetService("AssetService")
local options = { Size = Vector2.new(32, 32) }
local editableImage = AssetService:CreateEditableImage(options)
local pixelsBuffer = editableImage:ReadPixelsBuffer(Vector2.zero, Vector2.new(2, 1))
local color1 =
Color3.fromRGB(buffer.readu8(pixelsBuffer, 0), buffer.readu8(pixelsBuffer, 1), buffer.readu8(pixelsBuffer, 2))
local transparency1 = (255 - buffer.readu8(pixelsBuffer, 3)) / 255
local color2 =
Color3.fromRGB(buffer.readu8(pixelsBuffer, 4), buffer.readu8(pixelsBuffer, 5), buffer.readu8(pixelsBuffer, 6))
local transparency2 = (255 - buffer.readu8(pixelsBuffer, 7)) / 255
local averageColor = color1:Lerp(color2, 0.5)
local averageTransparency = (transparency1 + transparency2) / 2
local part = Instance.new("Part")
part.Color = averageColor
part.Transparency = averageTransparency
part.Parent = workspace

WritePixelsBuffer
Các khả năng: DynamicGeneration
EditableImage:WritePixelsBuffer(
position:Vector2, size:Vector2, buffer:buffer
):()
Tham Số
position:Vector2
size:Vector2
buffer:buffer
Lợi Nhuận
()
Mẫu mã
EditableImage:WritePixelsBuffer()
local AssetService = game:GetService("AssetService")
local options = { Size = Vector2.new(32, 32) }
local editableImage = AssetService:CreateEditableImage(options)
local pixelsBuffer = editableImage:ReadPixelsBuffer(Vector2.zero, editableImage.Size)
for i = 1, editableImage.Size.X * editableImage.Size.Y do
local pixelIndex = (i - 1) * 4
buffer.writeu8(pixelsBuffer, pixelIndex, 255 - buffer.readu8(pixelsBuffer, pixelIndex))
buffer.writeu8(pixelsBuffer, pixelIndex + 1, 255 - buffer.readu8(pixelsBuffer, pixelIndex + 1))
buffer.writeu8(pixelsBuffer, pixelIndex + 2, 255 - buffer.readu8(pixelsBuffer, pixelIndex + 2))
-- Đặt alpha thành 255 để làm cho tất cả các pixel hoàn toàn mờ.
buffer.writeu8(pixelsBuffer, pixelIndex + 3, 255)
end
editableImage:WritePixelsBuffer(Vector2.zero, editableImage.Size, pixelsBuffer)

©2026 Roblox Corporation. Roblox, logo Roblox và Powering Imagination là các nhãn hiệu đã đăng ký và chưa đăng ký của chúng tôi tại Hoa Kỳ và các quốc gia khác.